Start to set up test environment for gsettings tests

This commit is contained in:
Matthias Clasen 2010-04-14 13:33:05 -04:00
parent b54ba5ae20
commit c2f446c547
3 changed files with 25 additions and 12 deletions

View File

@ -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 $? ; \

View File

@ -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

View File

@ -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 ();
}