aboutsummaryrefslogtreecommitdiff
path: root/localedata/tests-mbwc/dat_wcswidth.c
diff options
context:
space:
mode:
authorAndreas Jaeger <aj@suse.de>2000-06-27 12:14:09 +0000
committerAndreas Jaeger <aj@suse.de>2000-06-27 12:14:09 +0000
commit5b905722f66719de502ecd6129ef9a1bda4f9f47 (patch)
treee74e131343a6427f807f151abcabcce2c62f94ee /localedata/tests-mbwc/dat_wcswidth.c
parent756bb30555774e22121790fd6eb3dcf2ca4ed29e (diff)
downloadglibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.tar
glibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.tar.gz
glibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.tar.bz2
glibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.zip
* Makefile (tests): Add tests from tests-mbwc subdirectory,
comment them out for now. (subdir-dirs): New for tests-mbwc, add also vpaths. * Makefile (tests): Add tests from tests-mbwc subdirectory, comment them out for now. (subdir-dirs): New for tests-mbwc, add also vpaths.
Diffstat (limited to 'localedata/tests-mbwc/dat_wcswidth.c')
-rw-r--r--localedata/tests-mbwc/dat_wcswidth.c214
1 files changed, 214 insertions, 0 deletions
diff --git a/localedata/tests-mbwc/dat_wcswidth.c b/localedata/tests-mbwc/dat_wcswidth.c
new file mode 100644
index 0000000000..f8d51341d7
--- /dev/null
+++ b/localedata/tests-mbwc/dat_wcswidth.c
@@ -0,0 +1,214 @@
+/*
+ * TEST SUITE FOR MB/WC FUNCTIONS IN C LIBRARY
+ *
+ * FILE: dat_wcswidth.c
+ *
+ * WCSWIDTH: int wcswidth (const wchar_t *ws, size_t n);
+ */
+
+TST_WCSWIDTH tst_wcswidth_loc [] = {
+ {
+ { Twcswidth, TST_LOC_de },
+ {
+ { /*input.*/ { { 0x00C1,0x00C2,0x00C3,0x0000 }, 0 }, /* 01 */
+ /*expect*/ { 0,0,1,0 },
+ },
+ { /*input.*/ { { 0x00C1,0x00C2,0x00C3,0x0000 }, 1 }, /* 02 */
+ /*expect*/ { 0,0,1,1 },
+ },
+ { /*input.*/ { { 0x00C1,0x00C2,0x00C3,0x0000 }, 2 }, /* 03 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x00C1,0x00C2,0x00C3,0x0000 }, 3 }, /* 04 */
+ /*expect*/ { 0,0,1,3 },
+ },
+ { /*input.*/ { { 0x00C1,0x00C2,0x00C3,0x0000 }, 4 }, /* 05 */
+ /*expect*/ { 0,0,1,3 },
+ },
+ { /*input.*/ { { 0x0000 }, 1 }, /* 06 */
+ /*expect*/ { 0,0,1,0 },
+ },
+ { /*input.*/ { { 0x00C1,0x0001,0x0000 }, 2 }, /* 07 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x00C1,0x0001,0x0000 }, 1 }, /* 08 */
+ /*expect*/ { 0,0,1,1 },
+ },
+ { /*input.*/ { { 0x00C1,0x0001,0x0000 }, 2 }, /* 09 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x00C1,0x0092,0x0000 }, 2 }, /* 10 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x00C1,0x0020,0x0000 }, 2 }, /* 11 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x00C1,0x0021,0x0000 }, 2 }, /* 12 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x00C1,0x007E,0x0000 }, 2 }, /* 13 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x00C1,0x007F,0x0000 }, 2 }, /* 14 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x00C1,0x0080,0x0000 }, 2 }, /* 15 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x00C1,0x00A0,0x0000 }, 2 }, /* 16 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x00C1,0x00A1,0x0000 }, 2 }, /* 17 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x00C1,0x00FF,0x0000 }, 2 }, /* 18 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x00C1,0x3042,0x0000 }, 2 }, /* 19 */ /* <WAIVER> */ /* returns 2 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x00C1,0x3044,0x0000 }, 2 }, /* 20 */ /* <WAIVER> */ /* returns 2 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { is_last: 1 }
+ }
+ },
+ {
+ { Twcswidth, TST_LOC_enUS },
+ {
+ { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 0 }, /* 01 */
+ /*expect*/ { 0,0,1,0 },
+ },
+ { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 1 }, /* 02 */
+ /*expect*/ { 0,0,1,1 },
+ },
+ { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 2 }, /* 03 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 3 }, /* 04 */
+ /*expect*/ { 0,0,1,3 },
+ },
+ { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 4 }, /* 05 */
+ /*expect*/ { 0,0,1,3 },
+ },
+ { /*input.*/ { { 0x0000 }, 1 }, /* 06 */
+ /*expect*/ { 0,0,1,0 },
+ },
+ { /*input.*/ { { 0x0041,0x0001,0x0000 }, 2 }, /* 07 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x0001,0x0000 }, 1 }, /* 08 */
+ /*expect*/ { 0,0,1,1 },
+ },
+ { /*input.*/ { { 0x0041,0x0001,0x0000 }, 2 }, /* 09 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x0092,0x0000 }, 2 }, /* 10 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x0020,0x0000 }, 2 }, /* 11 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x0021,0x0000 }, 2 }, /* 12 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x007E,0x0000 }, 2 }, /* 13 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x007F,0x0000 }, 2 }, /* 14 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x0080,0x0000 }, 2 }, /* 15 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x00A0,0x0000 }, 2 }, /* 16 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x00A1,0x0000 }, 2 }, /* 17 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x00FF,0x0000 }, 2 }, /* 18 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ /* <WAIVER> */ /* returns 2 */
+ { /*input.*/ { { 0x0041,0x3042,0x0000 }, 2 }, /* 19 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ /* <WAIVER> */ /* returns 2 */
+ { /*input.*/ { { 0x0041,0x3044,0x0000 }, 2 }, /* 20 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { is_last: 1 }
+ }
+ },
+ {
+ { Twcswidth, TST_LOC_eucJP },
+ {
+ { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 }, 0 }, /* 01 */
+ /*expect*/ { 0,0,1,0 },
+ },
+ { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 }, 1 }, /* 02 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 }, 2 }, /* 03 */
+ /*expect*/ { 0,0,1,4 },
+ },
+ { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 }, 3 }, /* 04 */
+ /*expect*/ { 0,0,1,6 },
+ },
+ { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 }, 4 }, /* 05 */
+ /*expect*/ { 0,0,1,6 },
+ },
+ { /*input.*/ { { 0x0000 }, 1 }, /* 06 */
+ /*expect*/ { 0,0,1,0 },
+ },
+ { /*input.*/ { { 0x008E,0x0001,0x0000 }, 2 }, /* 07 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x3041,0x008E,0x0000 }, 1 }, /* 08 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x3041,0x008E,0x0000 }, 2 }, /* 09 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x3041,0x0001,0x0000 }, 2 }, /* 10 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x3041,0x3000,0x0000 }, 2 }, /* 11 */
+ /*expect*/ { 0,0,1,4 },
+ },
+ { /*input.*/ { { 0x0041,0x0021,0x0000 }, 2 }, /* 12 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x007E,0x0000 }, 2 }, /* 13 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x007F,0x0000 }, 2 }, /* 14 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x0080,0x0000 }, 2 }, /* 15 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0x00A0,0x0000 }, 2 }, /* 16 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ /* <NO_WAIVER> */ /* returns 3 */
+ { /*input.*/ { { 0x0041,0x00A1,0x0000 }, 2 }, /* 17 */
+ /*expect*/ { 0,0,1,-1 },
+ },
+ { /*input.*/ { { 0x0041,0xFF71,0x0000 }, 2 }, /* 18 */
+ /*expect*/ { 0,0,1,2 },
+ },
+ { /*input.*/ { { 0x0041,0x3042,0x0000 }, 2 }, /* 19 */
+ /*expect*/ { 0,0,1,3 },
+ },
+ { /*input.*/ { { 0x0041,0x3044,0x0000 }, 2 }, /* 20 */
+ /*expect*/ { 0,0,1,3 },
+ },
+ { is_last: 1 }
+ }
+ },
+ {
+ { Twcswidth, TST_LOC_end }
+ }
+};