From: Ryan Lortie Date: Fri, 4 Jul 2014 23:18:40 +0000 (-0400) Subject: gapplication tests: test resource base path X-Git-Tag: 2.41.2~18 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=58250555224ffcd22be24b1da9025564090cdba0;p=platform%2Fupstream%2Fglib.git gapplication tests: test resource base path Run some cases to make sure resource base path is behaving as we expect it to. https://bugzilla.gnome.org/show_bug.cgi?id=722092 --- diff --git a/gio/tests/gapplication.c b/gio/tests/gapplication.c index 69e4429..249aa6e 100644 --- a/gio/tests/gapplication.c +++ b/gio/tests/gapplication.c @@ -672,6 +672,39 @@ test_local_command_line (void) g_free (binpath); } +static void +test_resource_path (void) +{ + GApplication *app; + + app = g_application_new ("x.y.z", 0); + g_assert_cmpstr (g_application_get_resource_base_path (app), ==, "/x/y/z"); + + /* this should not change anything */ + g_application_set_application_id (app, "a.b.c"); + g_assert_cmpstr (g_application_get_resource_base_path (app), ==, "/x/y/z"); + + /* but this should... */ + g_application_set_resource_base_path (app, "/x"); + g_assert_cmpstr (g_application_get_resource_base_path (app), ==, "/x"); + + /* ... and this */ + g_application_set_resource_base_path (app, NULL); + g_assert_cmpstr (g_application_get_resource_base_path (app), ==, NULL); + + g_object_unref (app); + + /* Make sure that overriding at construction time works properly */ + app = g_object_new (G_TYPE_APPLICATION, "application-id", "x.y.z", "resource-base-path", "/a", NULL); + g_assert_cmpstr (g_application_get_resource_base_path (app), ==, "/a"); + g_object_unref (app); + + /* ... particularly if we override to NULL */ + app = g_object_new (G_TYPE_APPLICATION, "application-id", "x.y.z", "resource-base-path", NULL, NULL); + g_assert_cmpstr (g_application_get_resource_base_path (app), ==, NULL); + g_object_unref (app); +} + int main (int argc, char **argv) { @@ -690,6 +723,7 @@ main (int argc, char **argv) /* g_test_add_func ("/gapplication/remote-actions", test_remote_actions); */ g_test_add_func ("/gapplication/local-command-line", test_local_command_line); /* g_test_add_func ("/gapplication/remote-command-line", test_remote_command_line); */ + g_test_add_func ("/gapplication/resource-path", test_resource_path); return g_test_run (); }