ntdll: Add some tests for RtlIsTextUnicode.

This commit is contained in:
Hans Leidekker 2010-05-14 15:36:54 +02:00 committed by Alexandre Julliard
parent 41e147e68f
commit d1c8769b64
1 changed files with 7 additions and 0 deletions

View File

@ -1695,6 +1695,8 @@ static void test_RtlIntegerToChar(void)
static void test_RtlIsTextUnicode(void) static void test_RtlIsTextUnicode(void)
{ {
char ascii[] = "A simple string"; char ascii[] = "A simple string";
char false_positive[] = {0x41, 0x0a, 0x0d, 0x1d};
WCHAR false_negative = 0x0d0a;
WCHAR unicode[] = {'A',' ','U','n','i','c','o','d','e',' ','s','t','r','i','n','g',0}; WCHAR unicode[] = {'A',' ','U','n','i','c','o','d','e',' ','s','t','r','i','n','g',0};
WCHAR unicode_no_controls[] = {'A','U','n','i','c','o','d','e','s','t','r','i','n','g',0}; WCHAR unicode_no_controls[] = {'A','U','n','i','c','o','d','e','s','t','r','i','n','g',0};
/* String with both byte-reversed and standard Unicode control characters. */ /* String with both byte-reversed and standard Unicode control characters. */
@ -1810,6 +1812,11 @@ static void test_RtlIsTextUnicode(void)
ok(!pRtlIsTextUnicode(mixed_controls, sizeof(mixed_controls), &flags), "Test should pass on string containing both byte-reversed and standard control characters.\n"); ok(!pRtlIsTextUnicode(mixed_controls, sizeof(mixed_controls), &flags), "Test should pass on string containing both byte-reversed and standard control characters.\n");
ok(flags == (IS_TEXT_UNICODE_CONTROLS | IS_TEXT_UNICODE_REVERSE_CONTROLS), "Expected flags 0x44, obtained %x\n", flags); ok(flags == (IS_TEXT_UNICODE_CONTROLS | IS_TEXT_UNICODE_REVERSE_CONTROLS), "Expected flags 0x44, obtained %x\n", flags);
flags = IS_TEXT_UNICODE_STATISTICS;
todo_wine ok(pRtlIsTextUnicode(false_positive, sizeof(false_positive), &flags), "Test should pass on false positive.\n");
ok(!pRtlIsTextUnicode(&false_negative, sizeof(false_negative), NULL), "Test should fail on 0x0d0a (MALAYALAM LETTER UU).\n");
HeapFree(GetProcessHeap(), 0, be_unicode); HeapFree(GetProcessHeap(), 0, be_unicode);
HeapFree(GetProcessHeap(), 0, be_unicode_no_controls); HeapFree(GetProcessHeap(), 0, be_unicode_no_controls);
} }