[glib/new-gsettings] Start to set up test environment for gsettings tests



commit c2f446c547666d20fabc53b853b97dbb38636437
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Apr 14 13:33:05 2010 -0400

    Start to set up test environment for gsettings tests

 Makefile.decl         |    3 ++-
 gio/tests/Makefile.am |    5 +++--
 gio/tests/gsettings.c |   29 ++++++++++++++++++++---------
 3 files changed, 25 insertions(+), 12 deletions(-)
---
diff --git a/Makefile.decl b/Makefile.decl
index cbc0da1..e02ae13 100644
--- a/Makefile.decl
+++ b/Makefile.decl
@@ -7,13 +7,14 @@ GTESTER_REPORT = $(top_builddir)/glib/gtester-report	# for the GLIB package
 # initialize variables for unconditional += appending
 EXTRA_DIST =
 TEST_PROGS =
+TESTS_ENVIRONMENT =
 
 ### testing rules
 
 # test: run all tests in cwd and subdirs
 test:	${TEST_PROGS}
 if OS_UNIX
-	@test -z "${TEST_PROGS}" || ${GTESTER} --verbose ${TEST_PROGS}
+	@test -z "${TEST_PROGS}" || env ${TESTS_ENVIRONMENT} ${GTESTER} --verbose ${TEST_PROGS}
 	@ for subdir in $(SUBDIRS) . ; do \
 	    test "$$subdir" = "." -o "$$subdir" = "po" || \
 	    ( cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $@ ) || exit $? ; \
diff --git a/gio/tests/Makefile.am b/gio/tests/Makefile.am
index 61773ae..80da3c1 100644
--- a/gio/tests/Makefile.am
+++ b/gio/tests/Makefile.am
@@ -16,7 +16,7 @@ progs_ldadd     = 					\
 	$(top_builddir)/gobject/libgobject-2.0.la	\
 	$(top_builddir)/gio/libgio-2.0.la
 
-
+TESTS_ENVIRONMENT += GSETTINGS_SCHEMA_DIR=. GSETTINGS_MEMORY_BACKEND_STORE=./store
 TEST_PROGS +=	 		\
 	memory-input-stream 	\
 	memory-output-stream 	\
@@ -134,6 +134,7 @@ contexts_SOURCES	  = contexts.c
 contexts_LDADD		  = $(progs_ldadd) \
 	$(top_builddir)/gthread/libgthread-2.0.la
 
-gsettings_LDADD = $(progs_ldadd)
+gsettings_SOURCES	  = gsettings.c
+gsettings_LDADD		  = $(progs_ldadd)
 
 DISTCLEAN_FILES = applications/mimeinfo.cache
diff --git a/gio/tests/gsettings.c b/gio/tests/gsettings.c
index f3bcb27..cade882 100644
--- a/gio/tests/gsettings.c
+++ b/gio/tests/gsettings.c
@@ -1,25 +1,36 @@
 #include <gio.h>
 
-int
-main (void)
+static void
+test_basic (void)
 {
-  GSettings *settings;
   gchar *str = NULL;
-
-  g_type_init ();
+  GSettings *settings;
 
   settings = g_settings_new ("org.gtk.test");
 
   g_settings_get (settings, "greeting", "s", &str);
-  g_print ("it was '%s'\n", str);
+  g_assert_cmpstr (str, ==, "Hello, earthlings");
 
   g_settings_set (settings, "greeting", "s", "goodbye world");
-
   g_settings_get (settings, "greeting", "s", &str);
-  g_print ("it is now '%s'\n", str);
+  g_assert_cmpstr (str, ==, "goodbye world");
 
   g_settings_set (settings, "greeting", "i", 555);
 
   g_settings_get (settings, "greeting", "s", &str);
-  g_print ("finally, it is '%s'\n", str);
+#if 0
+  /* FIXME: currently, the integer write is not failing, so we get hte schema default here */
+  g_assert_cmpstr (str, ==, "goodbye world");
+#endif
+}
+
+int
+main (int argc, char *argv[])
+{
+  g_type_init ();
+  g_test_init (&argc, &argv, NULL);
+
+  g_test_add_func ("/gsettings/basic", test_basic);
+
+  return g_test_run ();
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]