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

Side by Side Diff: third_party/libaddressinput/chromium/cpp/test/language_test.cc

Issue 389863002: Remove Chrome's own version of libaddressinput in favor of the upstream. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (C) 2014 Google Inc.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14
15 #include "language.h"
16
17 #include <string>
18
19 #include <gtest/gtest.h>
20
21 namespace {
22
23 using i18n::addressinput::Language;
24
25 struct LanguageTestCase {
26 LanguageTestCase(const std::string& input_language_tag,
27 const std::string& expected_language_tag,
28 const std::string& expected_base_language,
29 bool expected_has_latin_script)
30 : input_language_tag(input_language_tag),
31 expected_language_tag(expected_language_tag),
32 expected_base_language(expected_base_language),
33 expected_has_latin_script(expected_has_latin_script) {}
34
35 ~LanguageTestCase() {}
36
37 const std::string input_language_tag;
38 const std::string expected_language_tag;
39 const std::string expected_base_language;
40 const bool expected_has_latin_script;
41 };
42
43 class LanguageTest : public testing::TestWithParam<LanguageTestCase> {};
44
45 TEST_P(LanguageTest, ExtractedDataIsCorrect) {
46 Language language(GetParam().input_language_tag);
47 EXPECT_EQ(GetParam().expected_language_tag, language.tag);
48 EXPECT_EQ(GetParam().expected_base_language, language.base);
49 EXPECT_EQ(GetParam().expected_has_latin_script, language.has_latin_script);
50 }
51
52 INSTANTIATE_TEST_CASE_P(
53 LanguageTestCases, LanguageTest,
54 testing::Values(
55 LanguageTestCase("", "", "", false),
56 LanguageTestCase("en", "en", "en", false),
57 LanguageTestCase("zh-Latn-CN", "zh-Latn-CN", "zh", true),
58 LanguageTestCase("zh-cmn-Latn-CN", "zh-cmn-Latn-CN", "zh", true),
59 LanguageTestCase("zh-Hans", "zh-Hans", "zh", false),
60 LanguageTestCase("en_GB", "en-GB", "en", false)));
61
62 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698