summaryrefslogtreecommitdiffstats
path: root/chromium/base/win/embedded_i18n/language_selector_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/base/win/embedded_i18n/language_selector_unittest.cc')
-rw-r--r--chromium/base/win/embedded_i18n/language_selector_unittest.cc173
1 files changed, 68 insertions, 105 deletions
diff --git a/chromium/base/win/embedded_i18n/language_selector_unittest.cc b/chromium/base/win/embedded_i18n/language_selector_unittest.cc
index 64efc1da713..6903d0cb38c 100644
--- a/chromium/base/win/embedded_i18n/language_selector_unittest.cc
+++ b/chromium/base/win/embedded_i18n/language_selector_unittest.cc
@@ -17,49 +17,26 @@ namespace win {
namespace i18n {
namespace {
-constexpr const base::char16* kExactMatchCandidates[] = {
- STRING16_LITERAL("am"), STRING16_LITERAL("ar"),
- STRING16_LITERAL("bg"), STRING16_LITERAL("bn"),
- STRING16_LITERAL("ca"), STRING16_LITERAL("cs"),
- STRING16_LITERAL("da"), STRING16_LITERAL("de"),
- STRING16_LITERAL("el"), STRING16_LITERAL("en-gb"),
- STRING16_LITERAL("en-us"), STRING16_LITERAL("es"),
- STRING16_LITERAL("es-419"), STRING16_LITERAL("et"),
- STRING16_LITERAL("fa"), STRING16_LITERAL("fi"),
- STRING16_LITERAL("fil"), STRING16_LITERAL("fr"),
- STRING16_LITERAL("gu"), STRING16_LITERAL("hi"),
- STRING16_LITERAL("hr"), STRING16_LITERAL("hu"),
- STRING16_LITERAL("id"), STRING16_LITERAL("it"),
- STRING16_LITERAL("iw"), STRING16_LITERAL("ja"),
- STRING16_LITERAL("kn"), STRING16_LITERAL("ko"),
- STRING16_LITERAL("lt"), STRING16_LITERAL("lv"),
- STRING16_LITERAL("ml"), STRING16_LITERAL("mr"),
- STRING16_LITERAL("nl"), STRING16_LITERAL("no"),
- STRING16_LITERAL("pl"), STRING16_LITERAL("pt-br"),
- STRING16_LITERAL("pt-pt"), STRING16_LITERAL("ro"),
- STRING16_LITERAL("ru"), STRING16_LITERAL("sk"),
- STRING16_LITERAL("sl"), STRING16_LITERAL("sr"),
- STRING16_LITERAL("sv"), STRING16_LITERAL("sw"),
- STRING16_LITERAL("ta"), STRING16_LITERAL("te"),
- STRING16_LITERAL("th"), STRING16_LITERAL("tr"),
- STRING16_LITERAL("uk"), STRING16_LITERAL("vi"),
- STRING16_LITERAL("zh-cn"), STRING16_LITERAL("zh-tw")};
-
-constexpr const base::char16* kAliasMatchCandidates[] = {
- STRING16_LITERAL("he"), STRING16_LITERAL("nb"),
- STRING16_LITERAL("tl"), STRING16_LITERAL("zh-chs"),
- STRING16_LITERAL("zh-cht"), STRING16_LITERAL("zh-hans"),
- STRING16_LITERAL("zh-hant"), STRING16_LITERAL("zh-hk"),
- STRING16_LITERAL("zh-mo")};
-
-constexpr const base::char16* kWildcardMatchCandidates[] = {
- STRING16_LITERAL("en-AU"), STRING16_LITERAL("es-CO"),
- STRING16_LITERAL("pt-AB"), STRING16_LITERAL("zh-SG")};
+constexpr const wchar_t* kExactMatchCandidates[] = {
+ L"am", L"ar", L"bg", L"bn", L"ca", L"cs", L"da", L"de",
+ L"el", L"en-gb", L"en-us", L"es", L"es-419", L"et", L"fa", L"fi",
+ L"fil", L"fr", L"gu", L"hi", L"hr", L"hu", L"id", L"it",
+ L"iw", L"ja", L"kn", L"ko", L"lt", L"lv", L"ml", L"mr",
+ L"nl", L"no", L"pl", L"pt-br", L"pt-pt", L"ro", L"ru", L"sk",
+ L"sl", L"sr", L"sv", L"sw", L"ta", L"te", L"th", L"tr",
+ L"uk", L"vi", L"zh-cn", L"zh-tw"};
+
+constexpr const wchar_t* kAliasMatchCandidates[] = {
+ L"he", L"nb", L"tl", L"zh-chs", L"zh-cht",
+ L"zh-hans", L"zh-hant", L"zh-hk", L"zh-mo"};
+
+constexpr const wchar_t* kWildcardMatchCandidates[] = {L"en-AU", L"es-CO",
+ L"pt-AB", L"zh-SG"};
std::vector<LanguageSelector::LangToOffset> MakeLanguageOffsetPairs() {
std::vector<LanguageSelector::LangToOffset> language_offset_pairs;
int i = 0;
- for (const base::char16* lang : kExactMatchCandidates) {
+ for (const wchar_t* lang : kExactMatchCandidates) {
language_offset_pairs.push_back({lang, i++});
}
@@ -68,13 +45,12 @@ std::vector<LanguageSelector::LangToOffset> MakeLanguageOffsetPairs() {
class TestLanguageSelector : public LanguageSelector {
public:
- TestLanguageSelector()
- : TestLanguageSelector(std::vector<base::string16>()) {}
- explicit TestLanguageSelector(const std::vector<base::string16>& candidates)
+ TestLanguageSelector() : TestLanguageSelector(std::vector<std::wstring>()) {}
+ explicit TestLanguageSelector(const std::vector<std::wstring>& candidates)
: TestLanguageSelector(candidates, MakeLanguageOffsetPairs()) {}
TestLanguageSelector(
- const std::vector<base::string16>& candidates,
- base::span<const LanguageSelector::LangToOffset> languages_to_offset)
+ const std::vector<std::wstring>& candidates,
+ span<const LanguageSelector::LangToOffset> languages_to_offset)
: LanguageSelector(candidates, languages_to_offset) {}
};
@@ -89,32 +65,28 @@ TEST(LanguageSelectorTest, DefaultSelection) {
// Test some hypothetical candidate sets.
TEST(LanguageSelectorTest, AssortedSelections) {
{
- std::vector<base::string16> candidates = {STRING16_LITERAL("fr-BE"),
- STRING16_LITERAL("fr"),
- STRING16_LITERAL("en")};
+ std::vector<std::wstring> candidates = {L"fr-BE", L"fr", L"en"};
TestLanguageSelector instance(candidates);
// Expect the exact match to win.
- EXPECT_EQ(STRING16_LITERAL("fr"), instance.matched_candidate());
+ EXPECT_EQ(L"fr", instance.matched_candidate());
}
{
- std::vector<base::string16> candidates = {STRING16_LITERAL("xx-YY"),
- STRING16_LITERAL("cc-Ssss-RR")};
+ std::vector<std::wstring> candidates = {L"xx-YY", L"cc-Ssss-RR"};
TestLanguageSelector instance(candidates);
// Expect the fallback to win.
- EXPECT_EQ(STRING16_LITERAL("en-us"), instance.matched_candidate());
+ EXPECT_EQ(L"en-us", instance.matched_candidate());
}
{
- std::vector<base::string16> candidates = {STRING16_LITERAL("zh-SG"),
- STRING16_LITERAL("en-GB")};
+ std::vector<std::wstring> candidates = {L"zh-SG", L"en-GB"};
TestLanguageSelector instance(candidates);
// Expect the alias match to win.
- EXPECT_EQ(STRING16_LITERAL("zh-SG"), instance.matched_candidate());
+ EXPECT_EQ(L"zh-SG", instance.matched_candidate());
}
}
// A fixture for testing sets of single-candidate selections.
class LanguageSelectorMatchCandidateTest
- : public ::testing::TestWithParam<const base::char16*> {};
+ : public ::testing::TestWithParam<const wchar_t*> {};
TEST_P(LanguageSelectorMatchCandidateTest, TestMatchCandidate) {
TestLanguageSelector instance({GetParam()});
@@ -141,7 +113,7 @@ INSTANTIATE_TEST_SUITE_P(TestWildcardMatches,
// candidate that should be aliased to the expectation.
class LanguageSelectorAliasTest
: public ::testing::TestWithParam<
- std::tuple<const base::char16*, const base::char16*>> {};
+ std::tuple<const wchar_t*, const wchar_t*>> {};
// Test that the candidate language maps to the aliased translation.
TEST_P(LanguageSelectorAliasTest, AliasesMatch) {
@@ -149,49 +121,42 @@ TEST_P(LanguageSelectorAliasTest, AliasesMatch) {
EXPECT_EQ(std::get<0>(GetParam()), instance.selected_translation());
}
-INSTANTIATE_TEST_SUITE_P(
- EnGbAliases,
- LanguageSelectorAliasTest,
- ::testing::Combine(::testing::Values(STRING16_LITERAL("en-gb")),
- ::testing::Values(STRING16_LITERAL("en-au"),
- STRING16_LITERAL("en-ca"),
- STRING16_LITERAL("en-nz"),
- STRING16_LITERAL("en-za"))));
-
-INSTANTIATE_TEST_SUITE_P(
- IwAliases,
- LanguageSelectorAliasTest,
- ::testing::Combine(::testing::Values(STRING16_LITERAL("iw")),
- ::testing::Values(STRING16_LITERAL("he"))));
-
-INSTANTIATE_TEST_SUITE_P(
- NoAliases,
- LanguageSelectorAliasTest,
- ::testing::Combine(::testing::Values(STRING16_LITERAL("no")),
- ::testing::Values(STRING16_LITERAL("nb"))));
-
-INSTANTIATE_TEST_SUITE_P(
- FilAliases,
- LanguageSelectorAliasTest,
- ::testing::Combine(::testing::Values(STRING16_LITERAL("fil")),
- ::testing::Values(STRING16_LITERAL("tl"))));
+INSTANTIATE_TEST_SUITE_P(EnGbAliases,
+ LanguageSelectorAliasTest,
+ ::testing::Combine(::testing::Values(L"en-gb"),
+ ::testing::Values(L"en-au",
+ L"en-ca",
+ L"en-nz",
+ L"en-za")));
+
+INSTANTIATE_TEST_SUITE_P(IwAliases,
+ LanguageSelectorAliasTest,
+ ::testing::Combine(::testing::Values(L"iw"),
+ ::testing::Values(L"he")));
+
+INSTANTIATE_TEST_SUITE_P(NoAliases,
+ LanguageSelectorAliasTest,
+ ::testing::Combine(::testing::Values(L"no"),
+ ::testing::Values(L"nb")));
+
+INSTANTIATE_TEST_SUITE_P(FilAliases,
+ LanguageSelectorAliasTest,
+ ::testing::Combine(::testing::Values(L"fil"),
+ ::testing::Values(L"tl")));
INSTANTIATE_TEST_SUITE_P(
ZhCnAliases,
LanguageSelectorAliasTest,
- ::testing::Combine(::testing::Values(STRING16_LITERAL("zh-cn")),
- ::testing::Values(STRING16_LITERAL("zh-chs"),
- STRING16_LITERAL("zh-hans"),
- STRING16_LITERAL("zh-sg"))));
+ ::testing::Combine(::testing::Values(L"zh-cn"),
+ ::testing::Values(L"zh-chs", L"zh-hans", L"zh-sg")));
-INSTANTIATE_TEST_SUITE_P(
- ZhTwAliases,
- LanguageSelectorAliasTest,
- ::testing::Combine(::testing::Values(STRING16_LITERAL("zh-tw")),
- ::testing::Values(STRING16_LITERAL("zh-cht"),
- STRING16_LITERAL("zh-hant"),
- STRING16_LITERAL("zh-hk"),
- STRING16_LITERAL("zh-mo"))));
+INSTANTIATE_TEST_SUITE_P(ZhTwAliases,
+ LanguageSelectorAliasTest,
+ ::testing::Combine(::testing::Values(L"zh-tw"),
+ ::testing::Values(L"zh-cht",
+ L"zh-hant",
+ L"zh-hk",
+ L"zh-mo")));
// Test that we can get a match of the default language.
TEST(LanguageSelectorTest, DefaultLanguageName) {
@@ -202,34 +167,32 @@ TEST(LanguageSelectorTest, DefaultLanguageName) {
// All languages given to the selector must be lower cased (since generally
// the language names are generated by a python script).
TEST(LanguageSelectorTest, InvalidLanguageCasing) {
- constexpr LanguageSelector::LangToOffset kLangToOffset[] = {
- {STRING16_LITERAL("en-US"), 0}};
+ constexpr LanguageSelector::LangToOffset kLangToOffset[] = {{L"en-US", 0}};
EXPECT_DCHECK_DEATH(LanguageSelector instance(
- std::vector<base::string16>({STRING16_LITERAL("en-us")}), kLangToOffset));
+ std::vector<std::wstring>({L"en-us"}), kLangToOffset));
}
// Language name and offset pairs must be ordered when generated by the
// python script.
TEST(LanguageSelectorTest, InvalidLanguageNameOrder) {
- constexpr LanguageSelector::LangToOffset kLangToOffset[] = {
- {STRING16_LITERAL("en-us"), 0}, {STRING16_LITERAL("en-gb"), 1}};
+ constexpr LanguageSelector::LangToOffset kLangToOffset[] = {{L"en-us", 0},
+ {L"en-gb", 1}};
EXPECT_DCHECK_DEATH(LanguageSelector instance(
- std::vector<base::string16>({STRING16_LITERAL("en-us")}), kLangToOffset));
+ std::vector<std::wstring>({L"en-us"}), kLangToOffset));
}
// There needs to be a fallback language available in the generated
// languages if ever the selector is given a language that does not exist.
TEST(LanguageSelectorTest, NoFallbackLanguageAvailable) {
- constexpr LanguageSelector::LangToOffset kLangToOffset[] = {
- {STRING16_LITERAL("en-gb"), 0}};
+ constexpr LanguageSelector::LangToOffset kLangToOffset[] = {{L"en-gb", 0}};
EXPECT_DCHECK_DEATH(LanguageSelector instance(
- std::vector<base::string16>({STRING16_LITERAL("aa-bb")}), kLangToOffset));
+ std::vector<std::wstring>({L"aa-bb"}), kLangToOffset));
}
// No languages available.
TEST(LanguageSelectorTest, NoLanguagesAvailable) {
- EXPECT_DCHECK_DEATH(LanguageSelector instance(
- std::vector<base::string16>({STRING16_LITERAL("en-us")}), {}));
+ EXPECT_DCHECK_DEATH(
+ LanguageSelector instance(std::vector<std::wstring>({L"en-us"}), {}));
}
} // namespace i18n