libpurple/tests/check_libpurple.c

Tue, 06 May 2014 18:27:58 +0200

author
Tomasz Wasilczyk <twasilczyk@pidgin.im>
date
Tue, 06 May 2014 18:27:58 +0200
changeset 35989
2b5a26ddbb69
parent 35851
53a60c0d3040
parent 35985
c305fb08c0d1
permissions
-rw-r--r--

Merge release-2.x.y

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 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
29 NULL,
22c031a361b0 Fix warnings and add a call to g_timeout_add_seconds() just because.
Richard Laager <rlaager@pidgin.im>
parents: 16594
diff changeset
30 NULL,
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,
15950
0f01bb61c5d3 Fix compiler warnings and errors in tests resulting from using DEBUG_CFLAGS
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15906
diff changeset
32 NULL
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
33 };
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
34
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
35 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
36 purple_check_init(void) {
35985
c305fb08c0d1 Backport more warning fixes for libpurple tests from default
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 31891
diff changeset
37 #if !GLIB_CHECK_VERSION(2, 36, 0)
c305fb08c0d1 Backport more warning fixes for libpurple tests from default
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 31891
diff changeset
38 /* GLib type system is automaticaly initialized since 2.36. */
23137
545624e35b8f Initialize the type system in purple_check_init to prevent 'make check'
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21919
diff changeset
39 g_type_init();
35985
c305fb08c0d1 Backport more warning fixes for libpurple tests from default
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 31891
diff changeset
40 #endif
23137
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
35851
53a60c0d3040 cross-win32: tidy remaining macros - SSL_CERTIFICATES_DIR, BUILDDIR, CONFDIR
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35663
diff changeset
49 home_dir = g_build_path(G_DIR_SEPARATOR_S, $(top_builddir), "libpurple", "tests", "home", NULL);
30231
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());
31416
a1f75d2eb19c Add unit tests for oscar_util_name_compare. I suspected that this
Mark Doliner <markdoliner@pidgin.im>
parents: 31394
diff changeset
91 srunner_add_suite(sr, oscar_util_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());
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 33890
diff changeset
94 srunner_add_suite(sr, purple_xmlnode_suite());
35663
6527214c491e Add testsuite for PurpleTrie and fix found bugs
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35180
diff changeset
95 srunner_add_suite(sr, purple_trie_suite());
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
96
15867
27d45557637d libpurplify the 'make check' tests so they work again
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15435
diff changeset
97 /* make this a libpurple "ui" */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
98 purple_check_init();
15104
d71bd6517e5e [gaim-migrate @ 17825]
Nathan Walp <nwalp@pidgin.im>
parents: 15102
diff changeset
99
15102
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
100 srunner_run_all (sr, CK_NORMAL);
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
101 number_failed = srunner_ntests_failed (sr);
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
102 srunner_free (sr);
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
103
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15867
diff changeset
104 purple_core_quit();
15105
d90c07dc4d2b [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents: 15104
diff changeset
105
15102
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
106 return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
3d4824183ce0 [gaim-migrate @ 17823]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
107 }

mercurial