]> git.saurik.com Git - apple/libc.git/blob - tests/locale.c
Libc-1158.1.2.tar.gz
[apple/libc.git] / tests / locale.c
1 #include <locale.h>
2 #include <stdarg.h>
3 #include <stdio.h>
4 #include <wchar.h>
5 #include <wctype.h>
6 #include <xlocale.h>
7
8 #include <darwintest.h>
9
10 T_DECL(PR_23679075, "converts a cyrillic a to uppercase")
11 {
12 locale_t loc = newlocale(LC_COLLATE_MASK|LC_CTYPE_MASK, "ru_RU", 0);
13 T_ASSERT_NOTNULL(loc, "newlocale(LC_COLLATE_MASK|LC_CTYPE_MASK, \"ru_RU\", 0) should return a locale");
14
15 T_ASSERT_EQ(towupper_l(0x0430, loc), 0x0410, NULL);
16 freelocale(loc);
17 }
18
19 T_DECL(PR_24165555, "swprintf with Russian chars")
20 {
21 setlocale(LC_ALL, "ru_RU.UTF-8");
22
23 wchar_t buffer[256];
24 T_EXPECT_POSIX_SUCCESS(swprintf(buffer, 256, L"%ls", L"English: Hello World"), "English");
25 T_EXPECT_POSIX_SUCCESS(swprintf(buffer, 256, L"%ls", L"Russian: ру́сский язы́к"), "Russian");
26
27 setlocale(LC_ALL, "");
28 }