summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@gnome.org>2006-07-31 04:50:05 +0000
committerBehdad Esfahbod <behdad@src.gnome.org>2006-07-31 04:50:05 +0000
commit290443f86f6dc282f0355a9324474507f82a2226 (patch)
tree58f4204d0485f20da0b23ffc93a1fc4c92ba8423 /tests
parent94322b96dad9cf12fe28c6c33edd7f3b4c768bc9 (diff)
Update to reflect Unicode PR #29 (#348694, Nikolai Weibull)
2006-07-31 Behdad Esfahbod <behdad@gnome.org> * glib/gunidecomp.c (_g_utf8_normalize_wc): Update to reflect Unicode PR #29 (#348694, Nikolai Weibull) * tests/unicode-normalize.c (encode), (test_form): Make output more useful, reporting the unexpected output of the test.
Diffstat (limited to 'tests')
-rw-r--r--tests/unicode-normalize.c28
1 files changed, 24 insertions, 4 deletions
diff --git a/tests/unicode-normalize.c b/tests/unicode-normalize.c
index 9621bf448..9679e2550 100644
--- a/tests/unicode-normalize.c
+++ b/tests/unicode-normalize.c
@@ -42,6 +42,22 @@ const char *names[4] = {
"NFKC"
};
+static char *
+encode (const gchar *input)
+{
+ GString *result = g_string_new(NULL);
+
+ const gchar *p = input;
+ while (*p)
+ {
+ gunichar c = g_utf8_get_char (p);
+ g_string_append_printf (result, "%04X ", c);
+ p = g_utf8_next_char(p);
+ }
+
+ return g_string_free (result, FALSE);
+}
+
static void
test_form (int line,
GNormalizeMode mode,
@@ -62,9 +78,11 @@ test_form (int line,
char *result = g_utf8_normalize (c[i], -1, mode);
if (strcmp (result, c[expected]) != 0)
{
+ char *result_raw = encode(result);
fprintf (stderr, "\nFailure: %d/%d: %s\n", line, i + 1, raw[5]);
- fprintf (stderr, " g_utf8_normalize (%s, %s) != %s\n",
- raw[i], names[mode], raw[expected]);
+ fprintf (stderr, " g_utf8_normalize (%s, %s) != %s but %s\n",
+ raw[i], names[mode], raw[expected], result_raw);
+ g_free (result_raw);
success = FALSE;
}
@@ -78,9 +96,11 @@ test_form (int line,
char *result = g_utf8_normalize (c[i], -1, mode);
if (strcmp (result, c[expected]) != 0)
{
+ char *result_raw = encode(result);
fprintf (stderr, "\nFailure: %d/%d: %s\n", line, i, raw[5]);
- fprintf (stderr, " g_utf8_normalize (%s, %s) != %s\n",
- raw[i], names[mode], raw[expected]);
+ fprintf (stderr, " g_utf8_normalize (%s, %s) != %s but %s\n",
+ raw[i], names[mode], raw[expected], result_raw);
+ g_free (result_raw);
success = FALSE;
}