@@ -428,26 +428,26 @@ TEST (CharacterFunctionsGeneralTests, ToUpperCase)
428428 EXPECT_EQ (CharacterFunctions::toUpperCase (' !' ), ' !' );
429429
430430 // Latin-1 Supplement
431- EXPECT_EQ (CharacterFunctions::toUpperCase (L' à ' ), L' À ' );
432- EXPECT_EQ (CharacterFunctions::toUpperCase (L' é ' ), L' É ' );
433- EXPECT_EQ (CharacterFunctions::toUpperCase (L' ñ ' ), L' Ñ ' );
434- EXPECT_EQ (CharacterFunctions::toUpperCase (L' ÿ ' ), L' Ÿ ' );
431+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u00E0 ' ), L' \u00C0 ' ); // à -> À
432+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u00E9 ' ), L' \u00C9 ' ); // é -> É
433+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u00F1 ' ), L' \u00D1 ' ); // ñ -> Ñ
434+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u00FF ' ), L' \u0178 ' ); // ÿ -> Ÿ
435435
436436 // Latin Extended
437- EXPECT_EQ (CharacterFunctions::toUpperCase (L' ā ' ), L' Ā ' );
438- EXPECT_EQ (CharacterFunctions::toUpperCase (L' ě ' ), L' Ě ' );
439- EXPECT_EQ (CharacterFunctions::toUpperCase (L' ő ' ), L' Ő ' );
437+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u0101 ' ), L' \u0100 ' ); // ā -> Ā
438+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u011B ' ), L' \u011A ' ); // ě -> Ě
439+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u0151 ' ), L' \u0150 ' ); // ő -> Ő
440440
441441 // Greek
442- EXPECT_EQ (CharacterFunctions::toUpperCase (L' α ' ), L' Α ' );
443- EXPECT_EQ (CharacterFunctions::toUpperCase (L' ω ' ), L' Ω ' );
442+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u03B1 ' ), L' \u0391 ' ); // α -> Α
443+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u03C9 ' ), L' \u03A9 ' ); // ω -> Ω
444444
445445 // Cyrillic
446- EXPECT_EQ (CharacterFunctions::toUpperCase (L' а ' ), L' А ' );
447- EXPECT_EQ (CharacterFunctions::toUpperCase (L' я ' ), L' Я ' );
446+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u0430 ' ), L' \u0410 ' ); // а -> А
447+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u044F ' ), L' \u042F ' ); // я -> Я
448448
449449 // Special case: dotless i
450- EXPECT_EQ (CharacterFunctions::toUpperCase (L' ı ' ), L' I' );
450+ EXPECT_EQ (CharacterFunctions::toUpperCase (L' \u0131 ' ), L' I' ); // ı -> I
451451}
452452
453453TEST (CharacterFunctionsGeneralTests, ToLowerCase)
@@ -461,26 +461,26 @@ TEST (CharacterFunctionsGeneralTests, ToLowerCase)
461461 EXPECT_EQ (CharacterFunctions::toLowerCase (' !' ), ' !' );
462462
463463 // Latin-1 Supplement
464- EXPECT_EQ (CharacterFunctions::toLowerCase (L' À ' ), L' à ' );
465- EXPECT_EQ (CharacterFunctions::toLowerCase (L' É ' ), L' é ' );
466- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Ñ ' ), L' ñ ' );
467- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Ÿ ' ), L' ÿ ' );
464+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u00C0 ' ), L' \u00E0 ' ); // À -> à
465+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u00C9 ' ), L' \u00E9 ' ); // É -> é
466+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u00D1 ' ), L' \u00F1 ' ); // Ñ -> ñ
467+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u0178 ' ), L' \u00FF ' ); // Ÿ -> ÿ
468468
469469 // Latin Extended
470- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Ā ' ), L' ā ' );
471- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Ě ' ), L' ě ' );
472- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Ő ' ), L' ő ' );
470+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u0100 ' ), L' \u0101 ' ); // Ā -> ā
471+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u011A ' ), L' \u011B ' ); // Ě -> ě
472+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u0150 ' ), L' \u0151 ' ); // Ő -> ő
473473
474474 // Greek
475- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Α ' ), L' α ' );
476- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Ω ' ), L' ω ' );
475+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u0391 ' ), L' \u03B1 ' ); // Α -> α
476+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u03A9 ' ), L' \u03C9 ' ); // Ω -> ω
477477
478478 // Cyrillic
479- EXPECT_EQ (CharacterFunctions::toLowerCase (L' А ' ), L' а ' );
480- EXPECT_EQ (CharacterFunctions::toLowerCase (L' Я ' ), L' я ' );
479+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u0410 ' ), L' \u0430 ' ); // А -> а
480+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u042F ' ), L' \u044F ' ); // Я -> я
481481
482- // Special case: capital I to dotted i
483- EXPECT_EQ (CharacterFunctions::toLowerCase (L' İ ' ), L' i' );
482+ // Special case: capital I with dot to lowercase i
483+ EXPECT_EQ (CharacterFunctions::toLowerCase (L' \u0130 ' ), L' i' ); // İ -> i
484484}
485485
486486TEST (CharacterFunctionsGeneralTests, IsUpperCase)
@@ -494,15 +494,15 @@ TEST (CharacterFunctionsGeneralTests, IsUpperCase)
494494 EXPECT_FALSE (CharacterFunctions::isUpperCase (' !' ));
495495
496496 // Extended characters
497- EXPECT_TRUE (CharacterFunctions::isUpperCase (L' À ' ));
498- EXPECT_TRUE (CharacterFunctions::isUpperCase (L' Ñ ' ));
499- EXPECT_TRUE (CharacterFunctions::isUpperCase (L' Ω ' ));
500- EXPECT_TRUE (CharacterFunctions::isUpperCase (L' Я ' ));
501-
502- EXPECT_FALSE (CharacterFunctions::isUpperCase (L' à ' ));
503- EXPECT_FALSE (CharacterFunctions::isUpperCase (L' ñ ' ));
504- EXPECT_FALSE (CharacterFunctions::isUpperCase (L' ω ' ));
505- EXPECT_FALSE (CharacterFunctions::isUpperCase (L' я ' ));
497+ EXPECT_TRUE (CharacterFunctions::isUpperCase (L' \u00C0 ' )); // À
498+ EXPECT_TRUE (CharacterFunctions::isUpperCase (L' \u00D1 ' )); // Ñ
499+ EXPECT_TRUE (CharacterFunctions::isUpperCase (L' \u03A9 ' )); // Ω
500+ EXPECT_TRUE (CharacterFunctions::isUpperCase (L' \u042F ' )); // Я
501+
502+ EXPECT_FALSE (CharacterFunctions::isUpperCase (L' \u00E0 ' )); // à
503+ EXPECT_FALSE (CharacterFunctions::isUpperCase (L' \u00F1 ' )); // ñ
504+ EXPECT_FALSE (CharacterFunctions::isUpperCase (L' \u03C9 ' )); // ω
505+ EXPECT_FALSE (CharacterFunctions::isUpperCase (L' \u044F ' )); // я
506506}
507507
508508TEST (CharacterFunctionsGeneralTests, IsLowerCase)
@@ -516,15 +516,15 @@ TEST (CharacterFunctionsGeneralTests, IsLowerCase)
516516 EXPECT_FALSE (CharacterFunctions::isLowerCase (' !' ));
517517
518518 // Extended characters
519- EXPECT_TRUE (CharacterFunctions::isLowerCase (L' à ' ));
520- EXPECT_TRUE (CharacterFunctions::isLowerCase (L' ñ ' ));
521- EXPECT_TRUE (CharacterFunctions::isLowerCase (L' ω ' ));
522- EXPECT_TRUE (CharacterFunctions::isLowerCase (L' я ' ));
523-
524- EXPECT_FALSE (CharacterFunctions::isLowerCase (L' À ' ));
525- EXPECT_FALSE (CharacterFunctions::isLowerCase (L' Ñ ' ));
526- EXPECT_FALSE (CharacterFunctions::isLowerCase (L' Ω ' ));
527- EXPECT_FALSE (CharacterFunctions::isLowerCase (L' Я ' ));
519+ EXPECT_TRUE (CharacterFunctions::isLowerCase (L' \u00E0 ' )); // à
520+ EXPECT_TRUE (CharacterFunctions::isLowerCase (L' \u00F1 ' )); // ñ
521+ EXPECT_TRUE (CharacterFunctions::isLowerCase (L' \u03C9 ' )); // ω
522+ EXPECT_TRUE (CharacterFunctions::isLowerCase (L' \u044F ' )); // я
523+
524+ EXPECT_FALSE (CharacterFunctions::isLowerCase (L' \u00C0 ' )); // À
525+ EXPECT_FALSE (CharacterFunctions::isLowerCase (L' \u00D1 ' )); // Ñ
526+ EXPECT_FALSE (CharacterFunctions::isLowerCase (L' \u03A9 ' )); // Ω
527+ EXPECT_FALSE (CharacterFunctions::isLowerCase (L' \u042F ' )); // Я
528528}
529529
530530TEST (CharacterFunctionsGeneralTests, IsWhitespace)
@@ -693,7 +693,7 @@ TEST (CharacterFunctionsGeneralTests, GetHexDigitValue)
693693 EXPECT_EQ (CharacterFunctions::getHexDigitValue (L' 9' ), 9 );
694694 EXPECT_EQ (CharacterFunctions::getHexDigitValue (L' a' ), 10 );
695695 EXPECT_EQ (CharacterFunctions::getHexDigitValue (L' F' ), 15 );
696- EXPECT_EQ (CharacterFunctions::getHexDigitValue (L' € ' ), -1 );
696+ EXPECT_EQ (CharacterFunctions::getHexDigitValue (L' \u20AC ' ), -1 ); // €
697697}
698698
699699TEST (CharacterFunctionsGeneralTests, GetUnicodeCharFromWindows1252Codepage)
@@ -764,7 +764,7 @@ TEST (CharacterFunctionsGeneralTests, CaseConversionConsistency)
764764 }
765765
766766 // Test some extended characters
767- const yup_wchar testChars[] = { L' à ' , L' é ' , L' ñ ' , L' α ' , L' ω ' , L' а ' , L' я ' };
767+ const yup_wchar testChars[] = { L' \u00E0 ' , L' \u00E9 ' , L' \u00F1 ' , L' \u03B1 ' , L' \u03C9 ' , L' \u0430 ' , L' \u044F ' }; // à, é, ñ, α, ω, а, я
768768 for (auto c : testChars)
769769 {
770770 auto upper = CharacterFunctions::toUpperCase (c);
0 commit comments