Mercurial > pidgin
annotate libpurple/tests/check_libpurple.c @ 29667:f93f0ff8811d
ChangeLog!
author | John Bailey <rekkanoryo@rekkanoryo.org> |
---|---|
date | Fri, 02 Apr 2010 06:45:27 +0000 |
parents | c0c24f947211 |
children | a40c55113f7d |
rev | line source |
---|---|
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
1 #include <glib.h> |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
2 #include <stdlib.h> |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
3 |
21804
fb73a6ed8197
A couple compile fixes to the tests from Elliott Sales de Andrade. Fixes #4313.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
18368
diff
changeset
|
4 #include "tests.h" |
fb73a6ed8197
A couple compile fixes to the tests from Elliott Sales de Andrade. Fixes #4313.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
18368
diff
changeset
|
5 |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
6 #include "../core.h" |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
7 #include "../eventloop.h" |
15888
6577b292e7b4
Fix compiler warnings and errors in tests resulting from using DEBUG_CFLAGS
Stu Tomlinson <stu@nosnilmot.com>
parents:
15822
diff
changeset
|
8 #include "../util.h" |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
9 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
10 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
11 /****************************************************************************** |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
12 * libpurple goodies |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
13 *****************************************************************************/ |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
14 static guint |
15822 | 15 purple_check_input_add(gint fd, PurpleInputCondition condition, |
16 PurpleInputFunction function, gpointer data) | |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
17 { |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
18 /* this is a no-op for now, feel free to implement it */ |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
19 return 0; |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
20 } |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
21 |
15822 | 22 static PurpleEventLoopUiOps eventloop_ui_ops = { |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
23 g_timeout_add, |
18368
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
24 g_source_remove, |
15822 | 25 purple_check_input_add, |
18368
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
26 g_source_remove, |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
27 NULL, /* input_get_error */ |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
28 #if GLIB_CHECK_VERSION(2,14,0) |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
29 g_timeout_add_seconds, |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
30 #else |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
31 NULL, |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
32 #endif |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
33 NULL, |
743ff8e14b17
Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@wiktel.com>
parents:
16526
diff
changeset
|
34 NULL, |
15888
6577b292e7b4
Fix compiler warnings and errors in tests resulting from using DEBUG_CFLAGS
Stu Tomlinson <stu@nosnilmot.com>
parents:
15822
diff
changeset
|
35 NULL |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
36 }; |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
37 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
38 static void |
15822 | 39 purple_check_init(void) { |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
40 gchar *home_dir; |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
41 |
22972
6c015d2764d3
Initialize the type system in purple_check_init to prevent 'make check'
Stu Tomlinson <stu@nosnilmot.com>
parents:
21804
diff
changeset
|
42 g_type_init(); |
6c015d2764d3
Initialize the type system in purple_check_init to prevent 'make check'
Stu Tomlinson <stu@nosnilmot.com>
parents:
21804
diff
changeset
|
43 |
15822 | 44 purple_eventloop_set_ui_ops(&eventloop_ui_ops); |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
45 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
46 /* build our fake home directory */ |
28787
f3085a939a6d
Fix the call to g_build_path in the test suite. Before it made some really
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28703
diff
changeset
|
47 home_dir = g_build_path(G_DIR_SEPARATOR_S, BUILDDIR, "libpurple", "tests", "home", NULL); |
15822 | 48 purple_util_set_user_dir(home_dir); |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
49 g_free(home_dir); |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
50 |
15822 | 51 purple_core_init("check"); |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
52 } |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
53 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
54 /****************************************************************************** |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
55 * Check meat and potatoes |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
56 *****************************************************************************/ |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
57 Suite* |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
58 master_suite(void) |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
59 { |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
60 Suite *s = suite_create("Master Suite"); |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
61 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
62 return s; |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
63 } |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
64 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
65 int main(void) |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
66 { |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
67 int number_failed; |
16526
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
68 SRunner *sr; |
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
69 |
28790
c0c24f947211
Allow toggling debugging in the test suite with the environment variable
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28787
diff
changeset
|
70 if (g_getenv("PURPLE_CHECK_DEBUG")) |
c0c24f947211
Allow toggling debugging in the test suite with the environment variable
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28787
diff
changeset
|
71 purple_debug_set_enabled(TRUE); |
c0c24f947211
Allow toggling debugging in the test suite with the environment variable
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28787
diff
changeset
|
72 |
16526
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
73 /* Make g_return_... functions fatal, ALWAYS. |
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
74 * As this is the test code, this is NOT controlled |
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
75 * by PURPLE_FATAL_ASSERTS. */ |
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
76 g_log_set_always_fatal(G_LOG_LEVEL_CRITICAL); |
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
77 |
32188b6d2db8
Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@wiktel.com>
parents:
15888
diff
changeset
|
78 sr = srunner_create (master_suite()); |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
79 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
80 srunner_add_suite(sr, cipher_suite()); |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
81 srunner_add_suite(sr, jabber_jutil_suite()); |
28703
338eeaf371e2
jabber: Add the Hi() function (PBKDF2).
Paul Aurich <paul@darkrain42.org>
parents:
28201
diff
changeset
|
82 srunner_add_suite(sr, jabber_scram_suite()); |
28201
2da9e4266742
Add a test for qq's qq_encrypt function. Refs #10191. The string of
Mark Doliner <mark@kingant.net>
parents:
27747
diff
changeset
|
83 srunner_add_suite(sr, qq_suite()); |
27747
42359a734696
Add a super simple test for yahoo_codes_to_html(). I'm planning on
Mark Doliner <mark@kingant.net>
parents:
22972
diff
changeset
|
84 srunner_add_suite(sr, yahoo_util_suite()); |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
85 srunner_add_suite(sr, util_suite()); |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
86 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
87 /* make this a libpurple "ui" */ |
15822 | 88 purple_check_init(); |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
89 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
90 srunner_run_all (sr, CK_NORMAL); |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
91 number_failed = srunner_ntests_failed (sr); |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
92 srunner_free (sr); |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
93 |
15822 | 94 purple_core_quit(); |
15805
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
95 |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
96 return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE; |
a0a5e323a6ac
libpurplify the 'make check' tests so they work again
Stu Tomlinson <stu@nosnilmot.com>
parents:
diff
changeset
|
97 } |