libpurple/tests/check_libpurple.c

Wed, 02 Feb 2011 05:47:50 +0000

author
Paul Aurich <darkrain42@pidgin.im>
date
Wed, 02 Feb 2011 05:47:50 +0000
changeset 31394
dd9b4ed08d0a
parent 30507
10c522a4c93a
child 31416
a1f75d2eb19c
permissions
-rw-r--r--

jabber: Test harness for DIGEST-MD5 parsing function.

One of these tests fails, pending the next commit.

15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
1 #include <glib.h>
15102
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2 #include <stdlib.h>
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
3
21919
9be7eb0e891c A couple compile fixes to the tests from Elliott Sales de Andrade. Fixes #4313.
Daniel Atallah <datallah@pidgin.im>
parents: 18425
diff changeset
4 #include "tests.h"
9be7eb0e891c A couple compile fixes to the tests from Elliott Sales de Andrade. Fixes #4313.
Daniel Atallah <datallah@pidgin.im>
parents: 18425
diff changeset
5
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
6 #include "../core.h"
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
7 #include "../eventloop.h"
15950
0f01bb61c5d3 Fix compiler warnings and errors in tests resulting from using DEBUG_CFLAGS
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15906
diff changeset
8 #include "../util.h"
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
9
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
10
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
11 /******************************************************************************
15867
27d45557637d libpurplify the 'make check' tests so they work again
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15435
diff changeset
12 * libpurple goodies
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
13 *****************************************************************************/
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
14 static guint
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
15 purple_check_input_add(gint fd, PurpleInputCondition condition,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
16 PurpleInputFunction function, gpointer data)
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
17 {
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
18 /* this is a no-op for now, feel free to implement it */
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
19 return 0;
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
20 }
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
21
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
22 static PurpleEventLoopUiOps eventloop_ui_ops = {
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
23 g_timeout_add,
18425
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
24 g_source_remove,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
25 purple_check_input_add,
18425
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
26 g_source_remove,
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
27 NULL, /* input_get_error */
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
28 #if GLIB_CHECK_VERSION(2,14,0)
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
29 g_timeout_add_seconds,
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
30 #else
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
31 NULL,
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
32 #endif
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
33 NULL,
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
34 NULL,
15950
0f01bb61c5d3 Fix compiler warnings and errors in tests resulting from using DEBUG_CFLAGS
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15906
diff changeset
35 NULL
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
36 };
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
37
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
38 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
39 purple_check_init(void) {
23137
545624e35b8f Initialize the type system in purple_check_init to prevent 'make check'
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21919
diff changeset
40 g_type_init();
545624e35b8f Initialize the type system in purple_check_init to prevent 'make check'
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21919
diff changeset
41
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
42 purple_eventloop_set_ui_ops(&eventloop_ui_ops);
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
43
30231
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
44 #if 0
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
45 /* build our fake home directory */
30231
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
46 {
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
47 gchar *home_dir;
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
48
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
49 home_dir = g_build_path(G_DIR_SEPARATOR_S, BUILDDIR, "libpurple", "tests", "home", NULL);
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
50 purple_util_set_user_dir(home_dir);
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
51 g_free(home_dir);
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
52 }
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
53 #else
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
54 purple_util_set_user_dir("/dev/null");
1e3c291ae168 Use /dev/null for the purple directory for the tests.
Paul Aurich <darkrain42@pidgin.im>
parents: 29126
diff changeset
55 #endif
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
56
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
57 purple_core_init("check");
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
58 }
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
59
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
60 /******************************************************************************
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
61 * Check meat and potatoes
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
62 *****************************************************************************/
15104
d71bd6517e5e [gaim-migrate @ 17825]
Nathan Walp <nwalp@pidgin.im>
parents: 15102
diff changeset
63 Suite*
d71bd6517e5e [gaim-migrate @ 17825]
Nathan Walp <nwalp@pidgin.im>
parents: 15102
diff changeset
64 master_suite(void)
15102
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
65 {
15104
d71bd6517e5e [gaim-migrate @ 17825]
Nathan Walp <nwalp@pidgin.im>
parents: 15102
diff changeset
66 Suite *s = suite_create("Master Suite");
15102
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
67
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
68 return s;
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
69 }
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
70
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
71 int main(void)
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
72 {
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
73 int number_failed;
16594
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
74 SRunner *sr;
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
75
29126
5d92b5f0864d Allow toggling debugging in the test suite with the environment variable
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29123
diff changeset
76 if (g_getenv("PURPLE_CHECK_DEBUG"))
5d92b5f0864d Allow toggling debugging in the test suite with the environment variable
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29123
diff changeset
77 purple_debug_set_enabled(TRUE);
5d92b5f0864d Allow toggling debugging in the test suite with the environment variable
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29123
diff changeset
78
16594
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
79 /* Make g_return_... functions fatal, ALWAYS.
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
80 * As this is the test code, this is NOT controlled
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
81 * by PURPLE_FATAL_ASSERTS. */
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
82 g_log_set_always_fatal(G_LOG_LEVEL_CRITICAL);
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
83
d7ba74322ca4 Use fatal asserts unconditionally in the test code. Perhaps this could be better integrated in some way, but this works.
Richard Laager <rlaager@pidgin.im>
parents: 15950
diff changeset
84 sr = srunner_create (master_suite());
15104
d71bd6517e5e [gaim-migrate @ 17825]
Nathan Walp <nwalp@pidgin.im>
parents: 15102
diff changeset
85
15154
40b03e555de9 [gaim-migrate @ 17878]
Nathan Walp <nwalp@pidgin.im>
parents: 15105
diff changeset
86 srunner_add_suite(sr, cipher_suite());
30507
10c522a4c93a jabber: Start adding some caps tests
Paul Aurich <darkrain42@pidgin.im>
parents: 30231
diff changeset
87 srunner_add_suite(sr, jabber_caps_suite());
31394
dd9b4ed08d0a jabber: Test harness for DIGEST-MD5 parsing function.
Paul Aurich <darkrain42@pidgin.im>
parents: 30507
diff changeset
88 srunner_add_suite(sr, jabber_digest_md5_suite());
15154
40b03e555de9 [gaim-migrate @ 17878]
Nathan Walp <nwalp@pidgin.im>
parents: 15105
diff changeset
89 srunner_add_suite(sr, jabber_jutil_suite());
28862
8a37b7df0850 jabber: Add the Hi() function (PBKDF2).
Paul Aurich <darkrain42@pidgin.im>
parents: 28490
diff changeset
90 srunner_add_suite(sr, jabber_scram_suite());
28490
fdf38a8ff87e Add a test for qq's qq_encrypt function. Refs #10191. The string of
Mark Doliner <markdoliner@pidgin.im>
parents: 28013
diff changeset
91 srunner_add_suite(sr, qq_suite());
28013
cb4d0ca2e550 Add a super simple test for yahoo_codes_to_html(). I'm planning on
Mark Doliner <markdoliner@pidgin.im>
parents: 23137
diff changeset
92 srunner_add_suite(sr, yahoo_util_suite());
15104
d71bd6517e5e [gaim-migrate @ 17825]
Nathan Walp <nwalp@pidgin.im>
parents: 15102
diff changeset
93 srunner_add_suite(sr, util_suite());
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
94
15867
27d45557637d libpurplify the 'make check' tests so they work again
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15435
diff changeset
95 /* make this a libpurple "ui" */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
96 purple_check_init();
15104
d71bd6517e5e [gaim-migrate @ 17825]
Nathan Walp <nwalp@pidgin.im>
parents: 15102
diff changeset
97
15102
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
98 srunner_run_all (sr, CK_NORMAL);
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
99 number_failed = srunner_ntests_failed (sr);
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
100 srunner_free (sr);
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
101
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
102 purple_core_quit();
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
103
15102
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
104 return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
105 }

mercurial