[glib] contenttype tests: better assertions
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib] contenttype tests: better assertions
- Date: Sat, 21 Dec 2013 18:22:40 +0000 (UTC)
commit fc828c4de8b8de0e8c8469877f9c148616bb5b96
Author: Matthias Clasen <mclasen redhat com>
Date: Sat Dec 21 11:56:24 2013 -0500
contenttype tests: better assertions
I recently had to track down why these tests failed. Turned
out that some rogue package on my system had installed mime
types that declared all files with 3 letter names to be
'chemical/x-turbomole-vibrational'.
This change will make it more obvious what is going on by
mentioning the mime types in the assertion message.
gio/tests/contenttype.c | 35 ++++++++++++++++++++++++-----------
1 files changed, 24 insertions(+), 11 deletions(-)
---
diff --git a/gio/tests/contenttype.c b/gio/tests/contenttype.c
index e9ff2d3..645bddc 100644
--- a/gio/tests/contenttype.c
+++ b/gio/tests/contenttype.c
@@ -1,6 +1,18 @@
#include <gio/gio.h>
#include <string.h>
+#define g_assert_content_type_equals(s1, s2) \
+ do { \
+ const char *__s1 = (s1), *__s2 = (s2); \
+ if (g_content_type_equals (__s1, __s2)) ; \
+ else \
+ g_assertion_message_cmpstr (G_LOG_DOMAIN, \
+ __FILE__, __LINE__, \
+ G_STRFUNC, \
+ #s1 " == " #s2, \
+ __s1, " == ", __s2); \
+ } while (0)
+
static void
test_guess (void)
{
@@ -15,41 +27,41 @@ test_guess (void)
res = g_content_type_guess ("/etc/", NULL, 0, &uncertain);
expected = g_content_type_from_mime_type ("inode/directory");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (uncertain);
g_free (res);
g_free (expected);
res = g_content_type_guess ("foo.txt", NULL, 0, &uncertain);
expected = g_content_type_from_mime_type ("text/plain");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_free (res);
g_free (expected);
res = g_content_type_guess ("foo.desktop", data, sizeof (data) - 1, &uncertain);
expected = g_content_type_from_mime_type ("application/x-desktop");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (!uncertain);
g_free (res);
g_free (expected);
res = g_content_type_guess ("foo.txt", data, sizeof (data) - 1, &uncertain);
expected = g_content_type_from_mime_type ("text/plain");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (!uncertain);
g_free (res);
g_free (expected);
res = g_content_type_guess ("foo", data, sizeof (data) - 1, &uncertain);
expected = g_content_type_from_mime_type ("text/plain");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (!uncertain);
g_free (res);
g_free (expected);
res = g_content_type_guess (NULL, data, sizeof (data) - 1, &uncertain);
expected = g_content_type_from_mime_type ("application/x-desktop");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (!uncertain);
g_free (res);
g_free (expected);
@@ -58,29 +70,30 @@ test_guess (void)
* but looks like text so it can't be Powerpoint */
res = g_content_type_guess ("test.pot", (guchar *)"ABC abc", 7, &uncertain);
expected = g_content_type_from_mime_type ("text/x-gettext-translation-template");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (!uncertain);
g_free (res);
g_free (expected);
res = g_content_type_guess ("test.pot", (guchar *)"msgid \"", 7, &uncertain);
expected = g_content_type_from_mime_type ("text/x-gettext-translation-template");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (!uncertain);
g_free (res);
g_free (expected);
res = g_content_type_guess ("test.pot", (guchar *)"\xCF\xD0\xE0\x11", 4, &uncertain);
expected = g_content_type_from_mime_type ("application/vnd.ms-powerpoint");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
/* we cannot reliably detect binary powerpoint files as long as there is no
- * defined MIME magic, so do not check uncertain here */
+ * defined MIME magic, so do not check uncertain here
+ */
g_free (res);
g_free (expected);
res = g_content_type_guess ("test.otf", (guchar *)"OTTO", 4, &uncertain);
expected = g_content_type_from_mime_type ("application/x-font-otf");
- g_assert (g_content_type_equals (expected, res));
+ g_assert_content_type_equals (expected, res);
g_assert (!uncertain);
g_free (res);
g_free (expected);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]