diff libpurple/tests/check_libpurple.c @ 15805:a0a5e323a6ac

libpurplify the 'make check' tests so they work again
author Stu Tomlinson <stu@nosnilmot.com>
date Sat, 17 Mar 2007 17:29:40 +0000
parents
children 32c366eeeb99
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/tests/check_libpurple.c	Sat Mar 17 17:29:40 2007 +0000
@@ -0,0 +1,71 @@
+#include <glib.h>
+#include <stdlib.h>
+
+#include "../core.h"
+#include "../eventloop.h"
+
+#include "tests.h"
+
+/******************************************************************************
+ * libpurple goodies
+ *****************************************************************************/
+static guint
+gaim_check_input_add(gint fd, GaimInputCondition condition,
+                     GaimInputFunction function, gpointer data)
+{
+	/* this is a no-op for now, feel free to implement it */
+	return 0;
+}
+
+static GaimEventLoopUiOps eventloop_ui_ops = {
+	g_timeout_add,
+	(guint (*)(guint))g_source_remove,
+	gaim_check_input_add,
+	(guint (*)(guint))g_source_remove,
+};
+
+static void
+gaim_check_init(void) {
+	gchar *home_dir;
+
+	gaim_eventloop_set_ui_ops(&eventloop_ui_ops);
+
+	/* build our fake home directory */
+	home_dir = g_build_path(BUILDDIR, "libpurple", "tests", "home", NULL);
+	gaim_util_set_user_dir(home_dir);
+	g_free(home_dir);
+
+	gaim_core_init("check");
+}
+
+/******************************************************************************
+ * Check meat and potatoes
+ *****************************************************************************/
+Suite*
+master_suite(void)
+{
+	Suite *s = suite_create("Master Suite");
+
+	return s;
+}
+
+int main(void)
+{
+	int number_failed;
+	SRunner *sr = srunner_create (master_suite());
+
+	srunner_add_suite(sr, cipher_suite());
+	srunner_add_suite(sr, jabber_jutil_suite());
+	srunner_add_suite(sr, util_suite());
+
+	/* make this a libpurple "ui" */
+	gaim_check_init();
+
+	srunner_run_all (sr, CK_NORMAL);
+	number_failed = srunner_ntests_failed (sr);
+	srunner_free (sr);
+
+	gaim_core_quit();
+
+	return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
+}