summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--glib/gtestutils.c34
2 files changed, 30 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 618208585..f246840bf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-02-20 Tor Lillqvist <tml@novell.com>
+
+ * glib/gtestutils.c (g_test_trap_fork) [Win32]: Change the
+ g_error() to g_message() to avoid stopping on warnings. At least
+ now testglib runs to completion and the old tests in it get
+ exercised even if the newfangled ones don't.
+ (g_test_trap_assertions) [Win32]: Bypass on Windows.
+
2008-02-17 Marco Barisione <marco@barisione.org>
* glib/gregex.c: (translate_compile_error), (g_regex_new): Avoid some
diff --git a/glib/gtestutils.c b/glib/gtestutils.c
index d89bb4b94..6a6596e1a 100644
--- a/glib/gtestutils.c
+++ b/glib/gtestutils.c
@@ -1329,17 +1329,6 @@ g_string_write_out (GString *gstring,
}
}
-static int
-sane_dup2 (int fd1,
- int fd2)
-{
- int ret;
- do
- ret = dup2 (fd1, fd2);
- while (ret < 0 && errno == EINTR);
- return ret;
-}
-
static void
test_trap_clear (void)
{
@@ -1351,6 +1340,19 @@ test_trap_clear (void)
test_trap_last_stderr = NULL;
}
+#ifdef G_OS_UNIX
+
+static int
+sane_dup2 (int fd1,
+ int fd2)
+{
+ int ret;
+ do
+ ret = dup2 (fd1, fd2);
+ while (ret < 0 && errno == EINTR);
+ return ret;
+}
+
static guint64
test_time_stamp (void)
{
@@ -1362,6 +1364,8 @@ test_time_stamp (void)
return stamp;
}
+#endif
+
/**
* g_test_trap_fork:
* @usec_timeout: Timeout for the forked test in micro seconds.
@@ -1404,6 +1408,8 @@ test_time_stamp (void)
* }
* ]|
*
+ * This function is implemented only on Unix platforms.
+ *
* Returns: %TRUE for the forked child and %FALSE for the executing parent process.
*/
gboolean
@@ -1541,7 +1547,9 @@ g_test_trap_fork (guint64 usec_timeout,
return FALSE;
}
#else
- g_error ("Not implemented: g_test_trap_fork");
+ g_message ("Not implemented: g_test_trap_fork");
+
+ return FALSE;
#endif
}
@@ -1579,6 +1587,7 @@ g_test_trap_assertions (const char *domain,
guint64 assertion_flags, /* 0-pass, 1-fail, 2-outpattern, 4-errpattern */
const char *pattern)
{
+#ifdef G_OS_UNIX
gboolean must_pass = assertion_flags == 0;
gboolean must_fail = assertion_flags == 1;
gboolean match_result = 0 == (assertion_flags & 1);
@@ -1611,6 +1620,7 @@ g_test_trap_assertions (const char *domain,
g_assertion_message (domain, file, line, func, msg);
g_free (msg);
}
+#endif
}
static void