From 06da78e1eaad8ffc4b1dfbfac1421093755e364a Mon Sep 17 00:00:00 2001 From: "P. F. Chimento" Date: Mon, 29 Apr 2013 16:21:43 +0200 Subject: Crash on eos_window_new (NULL) Creating a window that is not tied to an application should be a serious programming error. [#42] --- test/test-window.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'test/test-window.c') diff --git a/test/test-window.c b/test/test-window.c index 9127120..c7641bd 100644 --- a/test/test-window.c +++ b/test/test-window.c @@ -7,8 +7,8 @@ #include "run-tests.h" #define EXPECTED_NULL_APPLICATION_ERRMSG \ - "In order to create a window, you must have an application for it to " \ - "connect to." + "*In order to create a window, you must have an application for it to " \ + "connect to.*" static void test_assign_application (GApplication *app) @@ -24,18 +24,18 @@ test_assign_application (GApplication *app) static void test_application_not_null (GApplication *app) { - GtkWidget *win; - - g_test_expect_message (TEST_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL, - EXPECTED_NULL_APPLICATION_ERRMSG); - - win = eos_window_new (NULL); + /* Unix-only test */ + if (g_test_trap_fork(0 /* timeout */, G_TEST_TRAP_SILENCE_STDERR)) + { + GtkWidget *win = eos_window_new (NULL); + gtk_widget_destroy (win); + exit (0); + } - g_test_assert_expected_messages (); + g_test_trap_assert_failed (); + g_test_trap_assert_stderr (EXPECTED_NULL_APPLICATION_ERRMSG); - gtk_widget_destroy (win); - g_application_release (app); - g_application_quit (app); /* Doesn't quit when win is destroyed */ + g_application_quit (app); /* No window, so otherwise won't quit */ } static void -- cgit v1.2.3