assertEqualIntA(a, ARCHIVE_OK,
archive_read_open_filename(a, refname, 10240));
- /* Verify regular file. */
- assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+ /* Note that usual Japanese filenames are tested in other cases */
#if defined(__APPLE__)
- /* NFD normalization */
- assertEqualString("\x55\xcc\x88\x4f\xcc\x88\x41\xcc\x88\x75\xcc\x88\x6f"
- "\xcc\x88\x61\xcc\x88/\x61\xcc\x88\x6f\xcc\x88\x75\xcc\x88\x41\xcc\x88"
- "\x4f\xcc\x88\x55\xcc\x88.txt",
- archive_entry_pathname(ae));
+ /* NFD normalization */
+ /* U:O:A:u:o:a: */
+ #define UMLAUT_DIRNAME "\x55\xcc\x88\x4f\xcc\x88\x41\xcc\x88\x75\xcc\x88\x6f"\
+ "\xcc\x88\x61\xcc\x88/"
+ /* a:o:u:A:O:U:.txt */
+ #define UMLAUT_FNAME "\x61\xcc\x88\x6f\xcc\x88\x75\xcc\x88\x41\xcc\x88"\
+ "\x4f\xcc\x88\x55\xcc\x88.txt"
#else
- /* NFC normalization */
- assertEqualString("\xc3\x9c\xc3\x96\xc3\x84\xc3\xbc\xc3\xb6\xc3\xa4/"
- "\xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c.txt",
- archive_entry_pathname(ae));
+ /* NFC normalization */
+ /* U:O:A:u:o:a: */
+ #define UMLAUT_DIRNAME "\xc3\x9c\xc3\x96\xc3\x84\xc3\xbc\xc3\xb6\xc3\xa4/"
+ /* a:o:u:A:O:U:.txt */
+ #define UMLAUT_FNAME "\xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c.txt"
#endif
+
+/* "Test" in Japanese Katakana */
+#define KATAKANA_FNAME "\xe3\x83\x86\xe3\x82\xb9\xe3\x83\x88.txt"
+#define KATAKANA_DIRNAME "\xe3\x83\x86\xe3\x82\xb9\xe3\x83\x88/"
+
+ /* Verify regular file. U:O:A:u:o:a:/a:o:u:A:O:U:.txt */
+ assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+ assertEqualString(UMLAUT_DIRNAME UMLAUT_FNAME, archive_entry_pathname(ae));
assertEqualInt(12, archive_entry_size(ae));
- /* Verify directory. */
+ /* Verify directory. U:O:A:u:o:a:/ */
assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
-#if defined(__APPLE__)
- /* NFD normalization */
- assertEqualString("\x55\xcc\x88\x4f\xcc\x88\x41\xcc\x88\x75\xcc\x88\x6f"
- "\xcc\x88\x61\xcc\x88/",
+ assertEqualString(UMLAUT_DIRNAME, archive_entry_pathname(ae));
+ assertEqualInt(0, archive_entry_size(ae));
+
+ /* Verify regular file. U:O:A:u:o:a:/("Test" in Japanese).txt */
+ assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+ assertEqualString(UMLAUT_DIRNAME KATAKANA_FNAME,
archive_entry_pathname(ae));
-#else
- /* NFC normalization */
- assertEqualString("\xc3\x9c\xc3\x96\xc3\x84\xc3\xbc\xc3\xb6\xc3\xa4/",
+ assertEqualInt(25, archive_entry_size(ae));
+
+ /* Verify regular file. ("Test" in Japanese)/a:o:u:A:O:U:.txt */
+ assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+ assertEqualString(KATAKANA_DIRNAME UMLAUT_FNAME,
archive_entry_pathname(ae));
-#endif
+ assertEqualInt(12, archive_entry_size(ae));
+
+ /* Verify directory. ("Test" in Japanese)/ */
+ assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+ assertEqualString(KATAKANA_DIRNAME, archive_entry_pathname(ae));
assertEqualInt(0, archive_entry_size(ae));
+ /* Verify regular file. a:o:u:A:O:U:.txt */
+ assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+ assertEqualString(UMLAUT_FNAME, archive_entry_pathname(ae));
+ assertEqualInt(12, archive_entry_size(ae));
+
/* End of archive. */
assertEqualIntA(a, ARCHIVE_EOF, archive_read_next_header(a, &ae));
MY`#__QL`078S<F.15=4!]0V8@I%5U0'U#9B"D575`08```\:!P``PZ3#ML.\\r
MPX3#EL.<90`M;&AD+0``````````PX"D72`"``!-!P!&I`,```,``0H``E]?\r
M7U]?7_\%`$`0`!$`1=P`U@#$`/P`]@#D`/__&P!!FDHB>9B"U0$H^DQ_F(+5\r
-2`2CZ3'^8@M4!!@``GW<'````\r
+M`2CZ3'^8@M4!!@``GW<'``!J`"UL:#`M&0```!D```!V)L1=(`*CNTT'`$:D\r
+M`P``#0`!@V6#6(-G+G1X=`H``E]?7U]?7_\1`$7<`-8`Q`#\`/8`Y`#__QL`\r
+M00IF#4J@E-4!L"5C?'65U0&P)6-\=975`08``$%^!P``5&5S="!I;B!*87!A\r
+M;F5S92!+871A:V%N87L`+6QH,"T,````#````+#U6%T@`J=Q30<`1J0#```-\r
+M``%?7U]?7U\N='AT"@`"@V6#6(-G_Q<`1.0`]@#\`,0`U@#<`"X`=`!X`'0`\r
+M"P!%QC"Y,,@P__\;`$'D5O!-H)35`?4-F(*15=4!Y%;P3:"4U0$&``"A+0<`\r
+M`,.DP[;#O,.$PY;#G%0`+6QH9"T``````````-3`PET@`@``30<`1J0#```#\r
+M``$*``*#98-8@V?_!0!`$``;`$%%!\Y.H)35`3/_]%&@E-4!,__T4:"4U0$&\r
+M``!>;@<``&8`+6QH,"T,````#````+#U6%T@`J=Q30<`1J0#```-``%?7U]?\r
+M7U\N='AT%P!$Y`#V`/P`Q`#6`-P`+@!T`'@`=``;`$'D5O!-H)35`?4-F(*1\r
+@5=4!Y%;P3:"4U0$&``"M>`<``,.DP[;#O,.$PY;#G`#D\r
`\r
end\r