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

Side by Side Diff: chrome/browser/language_usage_metrics_unittest.cc

Issue 15311006: Added and replaced some UMAs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 7 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
OLDNEW
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<int> language_set; 10 std::set<int> language_set;
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 LanguageUsageMetrics::ParseAcceptLanguages(",es", &language_set); 72 LanguageUsageMetrics::ParseAcceptLanguages(",es", &language_set);
73 EXPECT_EQ(1U, language_set.size()); 73 EXPECT_EQ(1U, language_set.size());
74 EXPECT_EQ(SPANISH, *language_set.begin()); 74 EXPECT_EQ(SPANISH, *language_set.begin());
75 75
76 // Combination of invalid and valid. 76 // Combination of invalid and valid.
77 LanguageUsageMetrics::ParseAcceptLanguages("1234,en", &language_set); 77 LanguageUsageMetrics::ParseAcceptLanguages("1234,en", &language_set);
78 EXPECT_EQ(1U, language_set.size()); 78 EXPECT_EQ(1U, language_set.size());
79 it = language_set.begin(); 79 it = language_set.begin();
80 EXPECT_EQ(ENGLISH, *it); 80 EXPECT_EQ(ENGLISH, *it);
81 } 81 }
82
83 TEST(LanguageUsageMetricsTest, ToLanguageCode) {
84 const int SPANISH = 25971;
85 const int JAPANESE = 27233;
86
87 // Basic case.
88 EXPECT_EQ(JAPANESE, LanguageUsageMetrics::ToLanguageCode("ja"));
89
90 // Case is ignored.
91 EXPECT_EQ(SPANISH, LanguageUsageMetrics::ToLanguageCode("Es"));
92
93 // Coutry code is ignored.
94 EXPECT_EQ(JAPANESE, LanguageUsageMetrics::ToLanguageCode("ja-JP"));
95
96 // Invalid locales are considered as unknown language.
97 EXPECT_EQ(0, LanguageUsageMetrics::ToLanguageCode(std::string()));
98 EXPECT_EQ(0, LanguageUsageMetrics::ToLanguageCode("1234"));
99
100 // "xx" is not acceptable because it doesn't exist in ISO 639-1 table.
101 // However, LanguageUsageMetrics doesn't tell what code is valid.
102 EXPECT_EQ(30840, LanguageUsageMetrics::ToLanguageCode("xx"));
103 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698