summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorP. F. Chimento <philip.chimento@gmail.com>2013-04-30 00:53:27 -0700
committerP. F. Chimento <philip.chimento@gmail.com>2013-04-30 00:53:27 -0700
commit2cb0efd85d34e748bd463661008e47adbf783209 (patch)
tree97f093ec19ce53b64258ef2ea762d08896599bf3
parent449b4d8e8d7c907020665a7a64324f46de67a8bb (diff)
parent00a8455d3a641659333be649de00e2f1c0a3bc61 (diff)
Merge pull request #42 from endlessm/issues/42
Issues/42
-rw-r--r--endless/eoswindow.c4
-rw-r--r--test/test-application.c24
-rw-r--r--test/test-window.c24
3 files changed, 20 insertions, 32 deletions
diff --git a/endless/eoswindow.c b/endless/eoswindow.c
index 7cd7f28..f74911d 100644
--- a/endless/eoswindow.c
+++ b/endless/eoswindow.c
@@ -83,8 +83,8 @@ eos_window_set_property (GObject *object,
gtk_window_set_application (GTK_WINDOW (self),
GTK_APPLICATION (self->priv->application));
if (self->priv->application == NULL)
- g_critical ("In order to create a window, you must have an application "
- "for it to connect to.");
+ g_error ("In order to create a window, you must have an application "
+ "for it to connect to.");
break;
default:
diff --git a/test/test-application.c b/test/test-application.c
index e7f3aa1..7f291b1 100644
--- a/test/test-application.c
+++ b/test/test-application.c
@@ -9,38 +9,26 @@
#define EXPECTED_TWO_WINDOW_ERRMSG "*You should not add more than one application window*"
static void
-test_undefined_two_windows (EosApplication *app)
+test_two_windows (EosApplication *app)
{
- /* Forking a test case from a signal handler is apparently not
- deterministic */
+ GtkWidget *win1 = eos_window_new (app);
-#if 0
/* Unix-only test */
if (g_test_trap_fork(0 /* timeout */, G_TEST_TRAP_SILENCE_STDERR))
{
- GtkWidget *win1, *win2;
-
- win1 = eos_window_new (app);
- win2 = eos_window_new (app);
-
- /* Destroy the windows so that the application exits */
- gtk_widget_destroy (win1);
+ GtkWidget *win2 = eos_window_new (app);
gtk_widget_destroy (win2);
-
exit (0);
}
g_test_trap_assert_failed ();
g_test_trap_assert_stderr (EXPECTED_TWO_WINDOW_ERRMSG);
- gdk_flush ();
-#endif
+
+ gtk_widget_destroy (win1);
}
void
add_application_tests (void)
{
- /* Tests for undefined behavior, i.e. programming errors */
- if (g_test_undefined ())
- ADD_APP_WINDOW_TEST ("/application/two-windows",
- test_undefined_two_windows);
+ ADD_APP_WINDOW_TEST ("/application/two-windows", test_two_windows);
}
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