diff options
author | art-snake <[email protected]> | 2022-02-10 16:50:35 +0300 |
---|---|---|
committer | Daniil Cherednik <[email protected]> | 2022-02-10 16:50:35 +0300 |
commit | dc5517df41fe6319ff249956fe5650e4bbc3e660 (patch) | |
tree | 5d5cb817648f650d76cf1076100726fd9b8448e8 /util/charset/utf8_ut.cpp | |
parent | 1700010e2088971894d12a7a16d6004866f986fd (diff) |
Restoring authorship annotation for <[email protected]>. Commit 2 of 2.
Diffstat (limited to 'util/charset/utf8_ut.cpp')
-rw-r--r-- | util/charset/utf8_ut.cpp | 74 |
1 files changed, 37 insertions, 37 deletions
diff --git a/util/charset/utf8_ut.cpp b/util/charset/utf8_ut.cpp index 8cbb844dc7e..9e68881cca2 100644 --- a/util/charset/utf8_ut.cpp +++ b/util/charset/utf8_ut.cpp @@ -52,46 +52,46 @@ Y_UNIT_TEST_SUITE(TUtfUtilTest) { } } - Y_UNIT_TEST(TestToUpperUtfString) { - UNIT_ASSERT_VALUES_EQUAL(ToUpperUTF8("xyz XYZ привет!"), "XYZ XYZ ПРИВЕТ!"); - + Y_UNIT_TEST(TestToUpperUtfString) { + UNIT_ASSERT_VALUES_EQUAL(ToUpperUTF8("xyz XYZ привет!"), "XYZ XYZ ПРИВЕТ!"); + UNIT_ASSERT_VALUES_EQUAL(ToUpperUTF8(TStringBuf("XYZ")), "XYZ"); - - { - TString s = "ПРИВЕТ!"; - TString q = "привет!"; - TString tmp; + + { + TString s = "ПРИВЕТ!"; + TString q = "привет!"; + TString tmp; UNIT_ASSERT(ToUpperUTF8Impl(s.data(), s.size(), tmp) == false); UNIT_ASSERT(ToUpperUTF8Impl(q.data(), q.size(), tmp) == true); - } - - { - const char* weird = "\xC8\xBE"; // 'Ⱦ', U+023E. strlen(weird)==2, strlen(ToUpper_utf8(weird)) is 3 - const char* turkI = "İ"; //strlen("İ") == 2, strlen(ToUpper_utf8("İ") == 1 - TStringBuf chars[] = {"F", "f", "б", "Б", turkI, weird}; - const int N = Y_ARRAY_SIZE(chars); - //try all combinations of these letters. - int numberOfVariants = 1; - for (int len = 0; len <= 4; ++len) { - for (int i = 0; i < numberOfVariants; ++i) { - TString s; - int k = i; - for (int j = 0; j < len; ++j) { - //Treat 'i' like number in base-N system with digits from 'chars'-array - s += chars[k % N]; - k /= N; - } - - TUtf16String tmp = UTF8ToWide(s); - tmp.to_upper(); - - UNIT_ASSERT_VALUES_EQUAL(ToUpperUTF8(s), WideToUTF8(tmp)); - } - numberOfVariants *= N; - } - } - } - + } + + { + const char* weird = "\xC8\xBE"; // 'Ⱦ', U+023E. strlen(weird)==2, strlen(ToUpper_utf8(weird)) is 3 + const char* turkI = "İ"; //strlen("İ") == 2, strlen(ToUpper_utf8("İ") == 1 + TStringBuf chars[] = {"F", "f", "б", "Б", turkI, weird}; + const int N = Y_ARRAY_SIZE(chars); + //try all combinations of these letters. + int numberOfVariants = 1; + for (int len = 0; len <= 4; ++len) { + for (int i = 0; i < numberOfVariants; ++i) { + TString s; + int k = i; + for (int j = 0; j < len; ++j) { + //Treat 'i' like number in base-N system with digits from 'chars'-array + s += chars[k % N]; + k /= N; + } + + TUtf16String tmp = UTF8ToWide(s); + tmp.to_upper(); + + UNIT_ASSERT_VALUES_EQUAL(ToUpperUTF8(s), WideToUTF8(tmp)); + } + numberOfVariants *= N; + } + } + } + Y_UNIT_TEST(TestUTF8ToWide) { TFileInput in(ArcadiaSourceRoot() + TStringBuf("/util/charset/ut/utf8/test1.txt")); |