diff --git a/Makefile.decl b/Makefile.decl index cbc0da121..e02ae13fd 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 61773aee0..80da3c198 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 f3bcb2782..cade8821b 100644 --- a/gio/tests/gsettings.c +++ b/gio/tests/gsettings.c @@ -1,25 +1,36 @@ #include -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 (); }