Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1125)

Unified Diff: third_party/libaddressinput/chromium/cpp/test/address_ui_test.cc

Issue 208243005: Determine language code and type of format for address. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/libaddressinput/chromium/cpp/test/address_ui_test.cc
diff --git a/third_party/libaddressinput/chromium/cpp/test/address_ui_test.cc b/third_party/libaddressinput/chromium/cpp/test/address_ui_test.cc
index 8fa508a81418fa972d3415baa00d5dc47821dfb8..a08a5aeb185b359eeddab19f5d1089e2e95288b4 100644
--- a/third_party/libaddressinput/chromium/cpp/test/address_ui_test.cc
+++ b/third_party/libaddressinput/chromium/cpp/test/address_ui_test.cc
@@ -75,7 +75,8 @@ TEST(AddressUiTest, RegionsAndComponentsAreValid) {
for (size_t i = 0; i < region_codes.size(); ++i) {
SCOPED_TRACE("Region code: " + region_codes[i]);
EXPECT_EQ(2U, region_codes[i].size());
- EXPECT_TRUE(ComponentsAreValid(BuildComponents(region_codes[i])));
+ EXPECT_TRUE(ComponentsAreValid(
+ BuildComponents(region_codes[i], std::string(), NULL)));
EXPECT_FALSE(GetRequiredFields(region_codes[i]).empty());
}
}
@@ -83,7 +84,8 @@ TEST(AddressUiTest, RegionsAndComponentsAreValid) {
// Verifies that BuildComponents() and GetRequiredFields() return an empty
// vector for an invalid region code.
TEST(AddressUiTest, InvalidRegionCodeReturnsEmptyVector) {
- EXPECT_TRUE(BuildComponents("INVALID-REGION-CODE").empty());
+ EXPECT_TRUE(
+ BuildComponents("INVALID-REGION-CODE", std::string(), NULL).empty());
EXPECT_TRUE(GetRequiredFields("INVALID-REGION-CODE").empty());
}
@@ -119,6 +121,66 @@ INSTANTIATE_TEST_CASE_P(
SeparatorData("th", " "),
SeparatorData("en", ", ")));
+struct LanguageCodeData {
+ LanguageCodeData(const std::string& region_code,
+ const std::string& ui_language_code,
+ const std::string& components_language_code)
+ : region_code(region_code),
+ ui_language_code(ui_language_code),
+ components_language_code(components_language_code) {}
+
+ ~LanguageCodeData() {}
+
+ std::string region_code;
+ std::string ui_language_code;
+ std::string components_language_code;
+};
+
+std::ostream& operator<<(std::ostream& out, const LanguageCodeData& data) {
+ out << "(" << data.region_code << ", " << data.ui_language_code << ", "
+ << data.components_language_code << ")";
+ return out;
+}
+
+// Tests for component language code.
+class ComponentLanguageCodeTest
+ : public testing::TestWithParam<LanguageCodeData> {};
+
+TEST_P(ComponentLanguageCodeTest, BasicTest) {
+ std::string components_language_code;
+ EXPECT_FALSE(BuildComponents(GetParam().region_code,
+ GetParam().ui_language_code,
+ &components_language_code).empty());
+ EXPECT_EQ(GetParam().components_language_code, components_language_code);
+}
+
+INSTANTIATE_TEST_CASE_P(
Evan Stade 2014/03/21 23:44:54 you know I disdain test_case_p
please use gerrit instead 2014/03/22 01:34:30 Replaced with an array of structs.
+ ComponentLanguageCodes, ComponentLanguageCodeTest,
+ testing::Values(
+ LanguageCodeData("AM", "hy", "hy"),
+ LanguageCodeData("AM", "en", "hy-latn"),
+ LanguageCodeData("CN", "zh-hans", "zh-hans"),
+ LanguageCodeData("CN", "zh-hant", "zh-hant"),
+ LanguageCodeData("CN", "zh", "zh"),
+ LanguageCodeData("CN", "zh-latn", "zh-latn"),
+ LanguageCodeData("CN", "en", "zh-latn"),
+ LanguageCodeData("CN", "ja", "zh-latn"),
+ LanguageCodeData("CN", "ko", "zh-latn"),
+ LanguageCodeData("HK", "zh", "zh"),
+ LanguageCodeData("HK", "zh-hans", "zh-hans"),
+ LanguageCodeData("HK", "zh-hant", "zh-hant"),
+ LanguageCodeData("HK", "zh-latn", "zh-latn"),
+ LanguageCodeData("HK", "en", "en"),
+ LanguageCodeData("HK", "fr", "zh-latn"),
+ LanguageCodeData("HK", "ja", "zh-latn"),
+ LanguageCodeData("HK", "ko", "zh-latn"),
+ LanguageCodeData("MO", "zh", "zh"),
+ LanguageCodeData("MO", "pt", "pt"),
+ LanguageCodeData("MO", "en", "zh-latn"),
+ LanguageCodeData("AQ", "en", "en"),
+ LanguageCodeData("AQ", "fr", "fr"),
+ LanguageCodeData("AQ", "es", "es"),
+ LanguageCodeData("AQ", "zh", "zh")));
} // namespace

Powered by Google App Engine
This is Rietveld 408576698