summary refs log tree commit diff
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.gz
glibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.tar.xz
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 }
+  }
+};