1 /* 2 * PROJECT: ReactOS API tests 3 * LICENSE: 0BSD (https://spdx.org/licenses/0BSD) 4 * PURPOSE: Test for RtlxUnicodeStringToOemSize 5 * COPYRIGHT: Copyright 2021 Jérôme Gardou <jerome.gardou@reactos.org> 6 */ 7 8 #include "precomp.h" 9 10 static const struct 11 { 12 ULONG AnsiCp; 13 ULONG OemCp; 14 PCWSTR Str; 15 ULONG OemLength; 16 } TestData[] = 17 { 18 { 1252, 932, L"\u30c7\u30b9\u30af\u30c8\u30c3\u30d7", 7 }, /* "Desktop" in Japanese */ 19 { 932, 1252, L"\u30c7\u30b9\u30af\u30c8\u30c3\u30d7", 13 }, /* "Desktop" in Japanese */ 20 }; 21 22 START_TEST(RtlxUnicodeStringToOemSize) 23 { 24 for (int i = 0; i < _countof(TestData); i++) 25 { 26 SetupLocale(TestData[i].AnsiCp, TestData[i].OemCp, -1); 27 UNICODE_STRING Ustr; 28 RtlInitUnicodeString(&Ustr, TestData[i].Str); 29 ULONG Length = RtlxUnicodeStringToOemSize(&Ustr); 30 ok(Length == TestData[i].OemLength, "Wrong OEM length for test %u, expected %u, got %u\n", 31 i, (UINT)TestData[i].OemLength, (UINT)Length); 32 } 33 } 34