[RFC PATCH 1/9] ntdll/tests: Add tests for iswctype.
Jacek Caban
jacek at codeweavers.com
Thu Jan 9 08:56:28 CST 2020
Hi Jeff,
On 09.01.2020 07:53, Jeff Smith wrote:
> @@ -1501,6 +1515,63 @@ static void test_sscanf(void)
> ok(d == 0.0, "d = %lf\n", f);
> }
>
> +static void test_iswctype(void)
> +{
> + unsigned int c, i;
> + unsigned short types = 0;
> + unsigned short base_wctype[65536];
> + static const struct
> + {
> + unsigned int c;
> + unsigned int wctype;
> + }
> + iswctype_tests[] =
> + {
> + { '\t', C1_CNTRL | C1_SPACE | C1_BLANK },
> + { 0xa0, C1_SPACE | C1_BLANK },
> + { 0x85, C1_CNTRL },
> + { 0xad, C1_PUNCT },
> + { 0xaa, C1_PUNCT },
> + { 0xb5, C1_PUNCT },
> + { 0xba, C1_PUNCT },
> + { 0xb2, C1_PUNCT | C1_DIGIT },
> + { 0xb3, C1_PUNCT | C1_DIGIT },
> + { 0xb9, C1_PUNCT | C1_DIGIT },
> + };
> +
> + for (c = 0; c <= 0xff; c++)
> + {
> + base_wctype[c] = p_iswctype(c, 0xffff);
> + types |= base_wctype[c];
> + }
> + todo_wine ok(types == 0x1ff, "Unexpected wctype bits present\n");
How about copying NTDLL_wctype to tests so that you can test exact
return values for 0..255 ranges? You wouldn't need base_wctype array.
You could just iterate all values and compare iswctype result to the
value from wctype array. Also, it would be nice to test return values of
isw* functions for those characters.
Thanks,
Jacek
More information about the wine-devel
mailing list