bug-libunistring
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug-libunistring] [PATCH] uniname/uniname-tests: skip if system's libun


From: Daiki Ueno
Subject: [bug-libunistring] [PATCH] uniname/uniname-tests: skip if system's libunistring is used
Date: Thu, 27 Nov 2014 17:47:16 +0900
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

Hello,

When trying to compile an older gettext tarball with libunistring
0.9.5-alpha3 (with an update to Unicode 7.0.0), I encountered a test
failure caused by a data mismatch:

  FAIL: uniname/test-uninames.sh
  ==============================

  \u037F name lookup returned wrong name: GREEK CAPITAL LETTER YOT

where \u037F is not defined in the test data bundled in the gettext
tarball (based on Unicode 5.0.0), but in the system's libunistring.  For
the meantime I plan to go with the attached a patch, which skips the test
when system's libunistring is used.  However, I'm not really sure of the
relationship between Gnulib modules and system's libunistring.

For example, modules/unistr/u32-mbtouc-tests has a line:

  test_u32_mbtouc_LDADD = $(LDADD) $(LIBUNISTRING)

This prefers system's libunistring to the corresponding Gnulib module.
I think Gnulib tests should rather prefer Gnulib modules.  Does anyone
know what's the rationale behind this?

Regards,
--
Daiki Ueno
>From 1125daef9fc55de5af4fd9ebd71cc63a26c5051b Mon Sep 17 00:00:00 2001
From: Daiki Ueno <address@hidden>
Date: Thu, 27 Nov 2014 16:46:38 +0900
Subject: [PATCH] uniname/uniname-tests: skip if system's libunistring is used

The test fails if the system's libunistring defines new characters
not in the bundled UnicodeDataNames.txt.
* tests/uniname/test-uninames.c (main): Skip the test if the
system's libunistring is linked.
---
 ChangeLog                     | 8 ++++++++
 tests/uniname/test-uninames.c | 5 +++++
 2 files changed, 13 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index e051495..2db70d0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2014-11-27  Daiki Ueno  <address@hidden>
+
+       uniname/uniname-tests: skip if system's libunistring is used
+       The test fails if the system's libunistring defines new characters
+       not in the bundled UnicodeDataNames.txt.
+       * tests/uniname/test-uninames.c (main): Skip the test if the
+       system's libunistring is linked.
+
 2014-11-22  Daiki Ueno  <address@hidden>
 
        pipe-filter-gi, pipe-filter-ii: port to AIX
diff --git a/tests/uniname/test-uninames.c b/tests/uniname/test-uninames.c
index a11e82b..b154fb6 100644
--- a/tests/uniname/test-uninames.c
+++ b/tests/uniname/test-uninames.c
@@ -253,10 +253,15 @@ main (int argc, char *argv[])
 
   set_program_name (argv[0]);
 
+#if HAVE_LIBUNISTRING
+  fprintf (stderr, "Skipping test: system's libunistring is used\n");
+  error = 77;
+#else
   fill_names (argv[1]);
 
   error |= test_name_lookup ();
   error |= test_inverse_lookup ();
+#endif
 
   return error;
 }
-- 
2.1.0


reply via email to

[Prev in Thread] Current Thread [Next in Thread]