diff options
author | Matthias Clasen <mclasen@redhat.com> | 2020-10-31 15:15:19 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2020-11-01 21:23:35 -0500 |
commit | 2dcc641d5a5baef0b722a9fa3b73d8100149bd9e (patch) | |
tree | 9ae4318ff3dae29d6ba005314e5ed74a9f2a1d94 | |
parent | c8432ae66899b55acf51deb86ef04b668197cd1e (diff) | |
download | gtk+-2dcc641d5a5baef0b722a9fa3b73d8100149bd9e.tar.gz |
testsuite: Improve coverage for GdkDisplayManager
-rw-r--r-- | testsuite/gdk/displaymanager.c | 55 | ||||
-rw-r--r-- | testsuite/gdk/meson.build | 1 |
2 files changed, 56 insertions, 0 deletions
diff --git a/testsuite/gdk/displaymanager.c b/testsuite/gdk/displaymanager.c new file mode 100644 index 0000000000..ce7c0d974f --- /dev/null +++ b/testsuite/gdk/displaymanager.c @@ -0,0 +1,55 @@ +#include <gtk/gtk.h> + +static void +test_basic (void) +{ + GdkDisplayManager *manager; + GdkDisplay *d, *d2; + GSList *list; + + manager = gdk_display_manager_get (); + g_assert_nonnull (manager); + + d = gdk_display_manager_get_default_display (manager); + g_assert_nonnull (d); + g_object_get (manager, "default-display", &d2, NULL); + g_assert_true (d == d2); + g_object_unref (d2); + + list = gdk_display_manager_list_displays (manager); + g_assert_nonnull (g_slist_find (list, d)); + g_slist_free (list); +} + +static void +test_set_default (void) +{ + GdkDisplayManager *manager; + GdkDisplay *d, *d2; + const char *name; + + manager = gdk_display_manager_get (); + g_assert_nonnull (manager); + + d = gdk_display_manager_get_default_display (manager); + name = gdk_display_get_name (d); + d2 = gdk_display_manager_open_display (manager, name); + g_object_set (manager, "default-display", d2, NULL); + + d = gdk_display_manager_get_default_display (manager); + g_assert_true (d == d2); +} + +int +main (int argc, char *argv[]) +{ + g_test_init (&argc, &argv, NULL); + + /* Open default display */ + gdk_display_open (NULL); + + g_test_add_func ("/displaymanager/basic", test_basic); + g_test_add_func ("/displaymanager/set-default", test_set_default); + + return g_test_run (); +} diff --git a/testsuite/gdk/meson.build b/testsuite/gdk/meson.build index aa93f8384d..008b6269a2 100644 --- a/testsuite/gdk/meson.build +++ b/testsuite/gdk/meson.build @@ -6,6 +6,7 @@ tests = [ 'cairo', 'clipboard', 'display', + 'displaymanager', 'encoding', 'keysyms', 'memorytexture', |