OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/language_usage_metrics.h" | 5 #include "chrome/browser/language_usage_metrics.h" |
6 | 6 |
7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "testing/gtest/include/gtest/gtest.h" |
8 | 8 |
9 TEST(LanguageUsageMetricsTest, ParseAcceptLanguages) { | 9 TEST(LanguageUsageMetricsTest, ParseAcceptLanguages) { |
10 std::set<Language> language_set; | 10 std::set<Language> language_set; |
11 std::set<Language>::const_iterator it; | 11 std::set<Language>::const_iterator it; |
12 | 12 |
13 // Basic single language case. | 13 // Basic single language case. |
14 LanguageUsageMetrics::ParseAcceptLanguages("ja", &language_set); | 14 LanguageUsageMetrics::ParseAcceptLanguages("ja", &language_set); |
15 EXPECT_EQ(1U, language_set.size()); | 15 EXPECT_EQ(1U, language_set.size()); |
16 EXPECT_EQ(JAPANESE, *language_set.begin()); | 16 EXPECT_EQ(JAPANESE, *language_set.begin()); |
17 | 17 |
18 // Empty language. | 18 // Empty language. |
19 LanguageUsageMetrics::ParseAcceptLanguages("", &language_set); | 19 LanguageUsageMetrics::ParseAcceptLanguages(std::string(), &language_set); |
20 EXPECT_EQ(0U, language_set.size()); | 20 EXPECT_EQ(0U, language_set.size()); |
21 | 21 |
22 // Country code is ignored. | 22 // Country code is ignored. |
23 LanguageUsageMetrics::ParseAcceptLanguages("ja-JP", &language_set); | 23 LanguageUsageMetrics::ParseAcceptLanguages("ja-JP", &language_set); |
24 EXPECT_EQ(1U, language_set.size()); | 24 EXPECT_EQ(1U, language_set.size()); |
25 EXPECT_EQ(JAPANESE, *language_set.begin()); | 25 EXPECT_EQ(JAPANESE, *language_set.begin()); |
26 | 26 |
27 // Case is ignored. | 27 // Case is ignored. |
28 LanguageUsageMetrics::ParseAcceptLanguages("Ja-jP", &language_set); | 28 LanguageUsageMetrics::ParseAcceptLanguages("Ja-jP", &language_set); |
29 EXPECT_EQ(1U, language_set.size()); | 29 EXPECT_EQ(1U, language_set.size()); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 // Basic case. | 79 // Basic case. |
80 EXPECT_EQ(JAPANESE, LanguageUsageMetrics::ToLanguage("ja")); | 80 EXPECT_EQ(JAPANESE, LanguageUsageMetrics::ToLanguage("ja")); |
81 | 81 |
82 // Case is ignored. | 82 // Case is ignored. |
83 EXPECT_EQ(SPANISH, LanguageUsageMetrics::ToLanguage("Es")); | 83 EXPECT_EQ(SPANISH, LanguageUsageMetrics::ToLanguage("Es")); |
84 | 84 |
85 // Coutry code is ignored. | 85 // Coutry code is ignored. |
86 EXPECT_EQ(JAPANESE, LanguageUsageMetrics::ToLanguage("ja-JP")); | 86 EXPECT_EQ(JAPANESE, LanguageUsageMetrics::ToLanguage("ja-JP")); |
87 | 87 |
88 // Invalid locales are considered as unknown language. | 88 // Invalid locales are considered as unknown language. |
89 EXPECT_EQ(UNKNOWN_LANGUAGE, LanguageUsageMetrics::ToLanguage("")); | 89 EXPECT_EQ(UNKNOWN_LANGUAGE, LanguageUsageMetrics::ToLanguage(std::string())); |
90 EXPECT_EQ(UNKNOWN_LANGUAGE, LanguageUsageMetrics::ToLanguage("xx")); | 90 EXPECT_EQ(UNKNOWN_LANGUAGE, LanguageUsageMetrics::ToLanguage("xx")); |
91 } | 91 } |
OLD | NEW |