Change K&R-style empty function declarations to explicit ANSI-C (void) prototypes
[yaz-moved-to-github.git] / test / tsticonv.c
index 55cd9d1..338490d 100644 (file)
@@ -2,7 +2,7 @@
  * Copyright (C) 1995-2006, Index Data ApS
  * See the file LICENSE for details.
  *
- * $Id: tsticonv.c,v 1.19 2006-05-03 13:01:04 adam Exp $
+ * $Id: tsticonv.c,v 1.23 2006-10-04 16:59:34 mike Exp $
  */
 
 #if HAVE_CONFIG_H
@@ -124,7 +124,7 @@ static const char *iso_8859_1_a[] = {
     "\xe5" "\xe5",
     0 };
 
-static void tst_marc8_to_ucs4b()
+static void tst_marc8_to_ucs4b(void)
 {
     yaz_iconv_t cd = yaz_iconv_open("UCS4", "MARC8");
     YAZ_CHECK(cd);
@@ -222,7 +222,7 @@ static void tst_marc8_to_ucs4b()
     yaz_iconv_close(cd);
 }
 
-static void tst_ucs4b_to_utf8()
+static void tst_ucs4b_to_utf8(void)
 {
     yaz_iconv_t cd = yaz_iconv_open("UTF8", "UCS4");
     YAZ_CHECK(cd);
@@ -337,7 +337,7 @@ int utf8_check(unsigned c)
     return 1;
 }
         
-static void tst_marc8_to_utf8()
+static void tst_marc8_to_utf8(void)
 {
     yaz_iconv_t cd = yaz_iconv_open("UTF-8", "MARC8");
 
@@ -353,7 +353,7 @@ static void tst_marc8_to_utf8()
     yaz_iconv_close(cd);
 }
 
-static void tst_marc8s_to_utf8()
+static void tst_marc8s_to_utf8(void)
 {
     yaz_iconv_t cd = yaz_iconv_open("UTF-8", "MARC8s");
 
@@ -371,7 +371,7 @@ static void tst_marc8s_to_utf8()
 }
 
 
-static void tst_marc8_to_latin1()
+static void tst_marc8_to_latin1(void)
 {
     yaz_iconv_t cd = yaz_iconv_open("ISO-8859-1", "MARC8");
 
@@ -413,7 +413,7 @@ static void tst_marc8_to_latin1()
     yaz_iconv_close(cd);
 }
 
-static void tst_utf8_to_marc8()
+static void tst_utf8_to_marc8(void)
 {
     yaz_iconv_t cd = yaz_iconv_open("MARC8", "UTF-8");
 
@@ -455,13 +455,20 @@ static void tst_utf8_to_marc8()
     /** Ideographic question mark (Unicode FF1F) */
     YAZ_CHECK(tst_convert(cd,
                           "\xEF\xBC\x9F" "o",        /* UTF-8 */
-                          "\033(1" "\x21\x2B\x3B" "\033(B" "o" ));
+                          "\033$1" "\x21\x2B\x3B" "\033(B" "o" ));
 
+
+    /** Superscript 0 . bug #642 */
+    YAZ_CHECK(tst_convert(cd,
+                          "(\xe2\x81\xb0)",        /* UTF-8 */
+                          "(\033p0\x1bs)"));
+    
     yaz_iconv_close(cd);
 }
 
 
-static void tst_latin1_to_marc8()
+static void tst_latin1_to_marc8(void)
 {
     yaz_iconv_t cd = yaz_iconv_open("MARC8", "ISO-8859-1");
 
@@ -483,17 +490,22 @@ static void tst_latin1_to_marc8()
     /** D8: UPPERCASE SCANDINAVIAN O */
     YAZ_CHECK(tst_convert(cd, "S\xd8", "S\xa2"));
 
-#if 0
-    /* does not pass yet */
     /** E9: LATIN SMALL LETTER E WITH ACUTE */
-    YAZ_CHECK(tst_convert(cd,
-                          "Cours de math\xe9",
-                          "Cours de mathâe"));
-#endif         
+    YAZ_CHECK(tst_convert(cd, "Cours de math\xe9", "Cours de mathâe"));
+    YAZ_CHECK(tst_convert(cd, "Cours de math", "Cours de math"
+                  ));
+    YAZ_CHECK(tst_convert(cd, "Cours de mathé", "Cours de mathâe" ));
+    YAZ_CHECK(tst_convert(cd, "12345678é","12345678âe"));
+    YAZ_CHECK(tst_convert(cd, "123456789é", "123456789âe"));
+    YAZ_CHECK(tst_convert(cd, "1234567890é","1234567890âe"));
+    YAZ_CHECK(tst_convert(cd, "12345678901é", "12345678901âe"));
+    YAZ_CHECK(tst_convert(cd, "Cours de mathém", "Cours de mathâem"));
+    YAZ_CHECK(tst_convert(cd, "Cours de mathématiques",
+                          "Cours de mathâematiques"));
     yaz_iconv_close(cd);
 }
 
-static void tst_utf8_codes()
+static void tst_utf8_codes(void)
 {
     YAZ_CHECK(utf8_check(3));
     YAZ_CHECK(utf8_check(127));