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

Side by Side Diff: components/translate/core/common/translate_metrics_unittest.cc

Issue 2825943002: Removed translate MetricsNameIndex. (Closed)
Patch Set: Removed duplicate comment Created 3 years, 8 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "components/translate/core/common/translate_metrics.h" 5 #include "components/translate/core/common/translate_metrics.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 19 matching lines...) Expand all
30 class MetricsRecorder { 30 class MetricsRecorder {
31 public: 31 public:
32 explicit MetricsRecorder(const char* key) : key_(key) { 32 explicit MetricsRecorder(const char* key) : key_(key) {
33 StatisticsRecorder::Initialize(); 33 StatisticsRecorder::Initialize();
34 34
35 HistogramBase* histogram = StatisticsRecorder::FindHistogram(key_); 35 HistogramBase* histogram = StatisticsRecorder::FindHistogram(key_);
36 if (histogram) 36 if (histogram)
37 base_samples_ = histogram->SnapshotSamples(); 37 base_samples_ = histogram->SnapshotSamples();
38 } 38 }
39 39
40 void CheckLanguage(translate::MetricsNameIndex index, 40 void CheckLanguage(const char* metric_name,
41 int expected_not_provided, 41 int expected_not_provided,
42 int expected_valid, 42 int expected_valid,
43 int expected_invalid) { 43 int expected_invalid) {
44 ASSERT_EQ(translate::GetMetricsName(index), key_); 44 ASSERT_EQ(metric_name, key_);
45 45
46 Snapshot(); 46 Snapshot();
47 47
48 EXPECT_EQ(expected_not_provided, 48 EXPECT_EQ(expected_not_provided,
49 GetCountWithoutSnapshot(translate::LANGUAGE_NOT_PROVIDED)); 49 GetCountWithoutSnapshot(translate::LANGUAGE_NOT_PROVIDED));
50 EXPECT_EQ(expected_valid, 50 EXPECT_EQ(expected_valid,
51 GetCountWithoutSnapshot(translate::LANGUAGE_VALID)); 51 GetCountWithoutSnapshot(translate::LANGUAGE_VALID));
52 EXPECT_EQ(expected_invalid, 52 EXPECT_EQ(expected_invalid,
53 GetCountWithoutSnapshot(translate::LANGUAGE_INVALID)); 53 GetCountWithoutSnapshot(translate::LANGUAGE_INVALID));
54 } 54 }
55 55
56 void CheckLanguageVerification(int expected_cld_disabled, 56 void CheckLanguageVerification(int expected_cld_disabled,
57 int expected_cld_only, 57 int expected_cld_only,
58 int expected_unknown, 58 int expected_unknown,
59 int expected_cld_agree, 59 int expected_cld_agree,
60 int expected_cld_disagree, 60 int expected_cld_disagree,
61 int expected_trust_cld, 61 int expected_trust_cld,
62 int expected_cld_complement_sub_code) { 62 int expected_cld_complement_sub_code) {
63 ASSERT_EQ(translate::GetMetricsName(translate::UMA_LANGUAGE_VERIFICATION), 63 ASSERT_EQ(translate::metrics_internal::kTranslateLanguageVerification,
64 key_); 64 key_);
65 65
66 Snapshot(); 66 Snapshot();
67 67
68 EXPECT_EQ( 68 EXPECT_EQ(
69 expected_cld_disabled, 69 expected_cld_disabled,
70 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_DISABLED)); 70 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_DISABLED));
71 EXPECT_EQ( 71 EXPECT_EQ(
72 expected_cld_only, 72 expected_cld_only,
73 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_ONLY)); 73 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_ONLY));
74 EXPECT_EQ( 74 EXPECT_EQ(expected_unknown, GetCountWithoutSnapshot(
75 expected_unknown, 75 translate::LANGUAGE_VERIFICATION_UNKNOWN));
76 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_UNKNOWN));
77 EXPECT_EQ( 76 EXPECT_EQ(
78 expected_cld_agree, 77 expected_cld_agree,
79 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_AGREE)); 78 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_AGREE));
80 EXPECT_EQ( 79 EXPECT_EQ(
81 expected_cld_disagree, 80 expected_cld_disagree,
82 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_DISAGREE)); 81 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_CLD_DISAGREE));
83 EXPECT_EQ( 82 EXPECT_EQ(
84 expected_trust_cld, 83 expected_trust_cld,
85 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_TRUST_CLD)); 84 GetCountWithoutSnapshot(translate::LANGUAGE_VERIFICATION_TRUST_CLD));
86 EXPECT_EQ(expected_cld_complement_sub_code, 85 EXPECT_EQ(expected_cld_complement_sub_code,
87 GetCountWithoutSnapshot( 86 GetCountWithoutSnapshot(
88 translate::LANGUAGE_VERIFICATION_CLD_COMPLEMENT_SUB_CODE)); 87 translate::LANGUAGE_VERIFICATION_CLD_COMPLEMENT_SUB_CODE));
89 } 88 }
90 89
91 void CheckScheme(int expected_http, int expected_https, int expected_others) { 90 void CheckScheme(int expected_http, int expected_https, int expected_others) {
92 ASSERT_EQ(translate::GetMetricsName(translate::UMA_PAGE_SCHEME), key_); 91 ASSERT_EQ(translate::metrics_internal::kTranslatePageScheme, key_);
93 92
94 Snapshot(); 93 Snapshot();
95 94
96 EXPECT_EQ(expected_http, GetCountWithoutSnapshot(translate::SCHEME_HTTP)); 95 EXPECT_EQ(expected_http, GetCountWithoutSnapshot(translate::SCHEME_HTTP));
97 EXPECT_EQ(expected_https, GetCountWithoutSnapshot(translate::SCHEME_HTTPS)); 96 EXPECT_EQ(expected_https, GetCountWithoutSnapshot(translate::SCHEME_HTTPS));
98 EXPECT_EQ(expected_others, 97 EXPECT_EQ(expected_others,
99 GetCountWithoutSnapshot(translate::SCHEME_OTHERS)); 98 GetCountWithoutSnapshot(translate::SCHEME_OTHERS));
100 } 99 }
101 100
102 void CheckTotalCount(int count) { 101 void CheckTotalCount(int count) {
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 std::unique_ptr<HistogramSamples> base_samples_; 153 std::unique_ptr<HistogramSamples> base_samples_;
155 std::unique_ptr<HistogramSamples> samples_; 154 std::unique_ptr<HistogramSamples> samples_;
156 155
157 DISALLOW_COPY_AND_ASSIGN(MetricsRecorder); 156 DISALLOW_COPY_AND_ASSIGN(MetricsRecorder);
158 }; 157 };
159 158
160 } // namespace 159 } // namespace
161 160
162 TEST(TranslateMetricsTest, ReportContentLanguage) { 161 TEST(TranslateMetricsTest, ReportContentLanguage) {
163 MetricsRecorder recorder( 162 MetricsRecorder recorder(
164 translate::GetMetricsName(translate::UMA_CONTENT_LANGUAGE)); 163 translate::metrics_internal::kTranslateContentLanguage);
165 164
166 recorder.CheckLanguage(translate::UMA_CONTENT_LANGUAGE, 0, 0, 0); 165 recorder.CheckLanguage(translate::metrics_internal::kTranslateContentLanguage,
166 0, 0, 0);
167 translate::ReportContentLanguage(std::string(), std::string()); 167 translate::ReportContentLanguage(std::string(), std::string());
168 recorder.CheckLanguage(translate::UMA_CONTENT_LANGUAGE, 1, 0, 0); 168 recorder.CheckLanguage(translate::metrics_internal::kTranslateContentLanguage,
169 1, 0, 0);
169 translate::ReportContentLanguage("ja_JP", "ja-JP"); 170 translate::ReportContentLanguage("ja_JP", "ja-JP");
170 recorder.CheckLanguage(translate::UMA_CONTENT_LANGUAGE, 1, 0, 1); 171 recorder.CheckLanguage(translate::metrics_internal::kTranslateContentLanguage,
172 1, 0, 1);
171 translate::ReportContentLanguage("en", "en"); 173 translate::ReportContentLanguage("en", "en");
172 recorder.CheckLanguage(translate::UMA_CONTENT_LANGUAGE, 1, 1, 1); 174 recorder.CheckLanguage(translate::metrics_internal::kTranslateContentLanguage,
175 1, 1, 1);
173 } 176 }
174 177
175 TEST(TranslateMetricsTest, ReportHtmlLang) { 178 TEST(TranslateMetricsTest, ReportHtmlLang) {
176 MetricsRecorder recorder(translate::GetMetricsName(translate::UMA_HTML_LANG)); 179 MetricsRecorder recorder(translate::metrics_internal::kTranslateHtmlLang);
177 180
178 recorder.CheckLanguage(translate::UMA_HTML_LANG, 0, 0, 0); 181 recorder.CheckLanguage(translate::metrics_internal::kTranslateHtmlLang, 0, 0,
182 0);
179 translate::ReportHtmlLang(std::string(), std::string()); 183 translate::ReportHtmlLang(std::string(), std::string());
180 recorder.CheckLanguage(translate::UMA_HTML_LANG, 1, 0, 0); 184 recorder.CheckLanguage(translate::metrics_internal::kTranslateHtmlLang, 1, 0,
185 0);
181 translate::ReportHtmlLang("ja_JP", "ja-JP"); 186 translate::ReportHtmlLang("ja_JP", "ja-JP");
182 recorder.CheckLanguage(translate::UMA_HTML_LANG, 1, 0, 1); 187 recorder.CheckLanguage(translate::metrics_internal::kTranslateHtmlLang, 1, 0,
188 1);
183 translate::ReportHtmlLang("en", "en"); 189 translate::ReportHtmlLang("en", "en");
184 recorder.CheckLanguage(translate::UMA_HTML_LANG, 1, 1, 1); 190 recorder.CheckLanguage(translate::metrics_internal::kTranslateHtmlLang, 1, 1,
191 1);
185 } 192 }
186 193
187 TEST(TranslateMetricsTest, ReportLanguageVerification) { 194 TEST(TranslateMetricsTest, ReportLanguageVerification) {
188 MetricsRecorder recorder( 195 MetricsRecorder recorder(
189 translate::GetMetricsName(translate::UMA_LANGUAGE_VERIFICATION)); 196 translate::metrics_internal::kTranslateLanguageVerification);
190 197
191 recorder.CheckLanguageVerification(0, 0, 0, 0, 0, 0, 0); 198 recorder.CheckLanguageVerification(0, 0, 0, 0, 0, 0, 0);
192 translate::ReportLanguageVerification( 199 translate::ReportLanguageVerification(
193 translate::LANGUAGE_VERIFICATION_CLD_DISABLED); 200 translate::LANGUAGE_VERIFICATION_CLD_DISABLED);
194 recorder.CheckLanguageVerification(1, 0, 0, 0, 0, 0, 0); 201 recorder.CheckLanguageVerification(1, 0, 0, 0, 0, 0, 0);
195 translate::ReportLanguageVerification( 202 translate::ReportLanguageVerification(
196 translate::LANGUAGE_VERIFICATION_CLD_ONLY); 203 translate::LANGUAGE_VERIFICATION_CLD_ONLY);
197 recorder.CheckLanguageVerification(1, 1, 0, 0, 0, 0, 0); 204 recorder.CheckLanguageVerification(1, 1, 0, 0, 0, 0, 0);
198 translate::ReportLanguageVerification( 205 translate::ReportLanguageVerification(
199 translate::LANGUAGE_VERIFICATION_UNKNOWN); 206 translate::LANGUAGE_VERIFICATION_UNKNOWN);
200 recorder.CheckLanguageVerification(1, 1, 1, 0, 0, 0, 0); 207 recorder.CheckLanguageVerification(1, 1, 1, 0, 0, 0, 0);
201 translate::ReportLanguageVerification( 208 translate::ReportLanguageVerification(
202 translate::LANGUAGE_VERIFICATION_CLD_AGREE); 209 translate::LANGUAGE_VERIFICATION_CLD_AGREE);
203 recorder.CheckLanguageVerification(1, 1, 1, 1, 0, 0, 0); 210 recorder.CheckLanguageVerification(1, 1, 1, 1, 0, 0, 0);
204 translate::ReportLanguageVerification( 211 translate::ReportLanguageVerification(
205 translate::LANGUAGE_VERIFICATION_CLD_DISAGREE); 212 translate::LANGUAGE_VERIFICATION_CLD_DISAGREE);
206 recorder.CheckLanguageVerification(1, 1, 1, 1, 1, 0, 0); 213 recorder.CheckLanguageVerification(1, 1, 1, 1, 1, 0, 0);
207 translate::ReportLanguageVerification( 214 translate::ReportLanguageVerification(
208 translate::LANGUAGE_VERIFICATION_TRUST_CLD); 215 translate::LANGUAGE_VERIFICATION_TRUST_CLD);
209 recorder.CheckLanguageVerification(1, 1, 1, 1, 1, 1, 0); 216 recorder.CheckLanguageVerification(1, 1, 1, 1, 1, 1, 0);
210 translate::ReportLanguageVerification( 217 translate::ReportLanguageVerification(
211 translate::LANGUAGE_VERIFICATION_CLD_COMPLEMENT_SUB_CODE); 218 translate::LANGUAGE_VERIFICATION_CLD_COMPLEMENT_SUB_CODE);
212 recorder.CheckLanguageVerification(1, 1, 1, 1, 1, 1, 1); 219 recorder.CheckLanguageVerification(1, 1, 1, 1, 1, 1, 1);
213 } 220 }
214 221
215 TEST(TranslateMetricsTest, ReportTimeToBeReady) { 222 TEST(TranslateMetricsTest, ReportTimeToBeReady) {
216 MetricsRecorder recorder( 223 MetricsRecorder recorder(
217 translate::GetMetricsName(translate::UMA_TIME_TO_BE_READY)); 224 translate::metrics_internal::kTranslateTimeToBeReady);
218 recorder.CheckTotalCount(0); 225 recorder.CheckTotalCount(0);
219 translate::ReportTimeToBeReady(3.14); 226 translate::ReportTimeToBeReady(3.14);
220 recorder.CheckValueInLogs(3.14); 227 recorder.CheckValueInLogs(3.14);
221 recorder.CheckTotalCount(1); 228 recorder.CheckTotalCount(1);
222 } 229 }
223 230
224 TEST(TranslateMetricsTest, ReportTimeToLoad) { 231 TEST(TranslateMetricsTest, ReportTimeToLoad) {
225 MetricsRecorder recorder( 232 MetricsRecorder recorder(translate::metrics_internal::kTranslateTimeToLoad);
226 translate::GetMetricsName(translate::UMA_TIME_TO_LOAD));
227 recorder.CheckTotalCount(0); 233 recorder.CheckTotalCount(0);
228 translate::ReportTimeToLoad(573.0); 234 translate::ReportTimeToLoad(573.0);
229 recorder.CheckValueInLogs(573.0); 235 recorder.CheckValueInLogs(573.0);
230 recorder.CheckTotalCount(1); 236 recorder.CheckTotalCount(1);
231 } 237 }
232 238
233 TEST(TranslateMetricsTest, ReportTimeToTranslate) { 239 TEST(TranslateMetricsTest, ReportTimeToTranslate) {
234 MetricsRecorder recorder( 240 MetricsRecorder recorder(
235 translate::GetMetricsName(translate::UMA_TIME_TO_TRANSLATE)); 241 translate::metrics_internal::kTranslateTimeToTranslate);
236 recorder.CheckTotalCount(0); 242 recorder.CheckTotalCount(0);
237 translate::ReportTimeToTranslate(4649.0); 243 translate::ReportTimeToTranslate(4649.0);
238 recorder.CheckValueInLogs(4649.0); 244 recorder.CheckValueInLogs(4649.0);
239 recorder.CheckTotalCount(1); 245 recorder.CheckTotalCount(1);
240 } 246 }
241 247
242 TEST(TranslateMetricsTest, ReportUserActionDuration) { 248 TEST(TranslateMetricsTest, ReportUserActionDuration) {
243 MetricsRecorder recorder( 249 MetricsRecorder recorder(
244 translate::GetMetricsName(translate::UMA_USER_ACTION_DURATION)); 250 translate::metrics_internal::kTranslateUserActionDuration);
245 recorder.CheckTotalCount(0); 251 recorder.CheckTotalCount(0);
246 TimeTicks begin = TimeTicks::Now(); 252 TimeTicks begin = TimeTicks::Now();
247 TimeTicks end = begin + base::TimeDelta::FromSeconds(3776); 253 TimeTicks end = begin + base::TimeDelta::FromSeconds(3776);
248 translate::ReportUserActionDuration(begin, end); 254 translate::ReportUserActionDuration(begin, end);
249 recorder.CheckValueInLogs(3776000.0); 255 recorder.CheckValueInLogs(3776000.0);
250 recorder.CheckTotalCount(1); 256 recorder.CheckTotalCount(1);
251 } 257 }
252 258
253 TEST(TranslateMetricsTest, ReportPageScheme) { 259 TEST(TranslateMetricsTest, ReportPageScheme) {
254 MetricsRecorder recorder( 260 MetricsRecorder recorder(translate::metrics_internal::kTranslatePageScheme);
255 translate::GetMetricsName(translate::UMA_PAGE_SCHEME));
256 recorder.CheckScheme(0, 0, 0); 261 recorder.CheckScheme(0, 0, 0);
257 translate::ReportPageScheme("http"); 262 translate::ReportPageScheme("http");
258 recorder.CheckScheme(1, 0, 0); 263 recorder.CheckScheme(1, 0, 0);
259 translate::ReportPageScheme("https"); 264 translate::ReportPageScheme("https");
260 recorder.CheckScheme(1, 1, 0); 265 recorder.CheckScheme(1, 1, 0);
261 translate::ReportPageScheme("ftp"); 266 translate::ReportPageScheme("ftp");
262 recorder.CheckScheme(1, 1, 1); 267 recorder.CheckScheme(1, 1, 1);
263 } 268 }
264 269
265 TEST(TranslateMetricsTest, ReportSimilarLanguageMatch) { 270 TEST(TranslateMetricsTest, ReportSimilarLanguageMatch) {
266 MetricsRecorder recorder( 271 MetricsRecorder recorder(
267 translate::GetMetricsName(translate::UMA_SIMILAR_LANGUAGE_MATCH)); 272 translate::metrics_internal::kTranslateSimilarLanguageMatch);
268 recorder.CheckTotalCount(0); 273 recorder.CheckTotalCount(0);
269 EXPECT_EQ(0, recorder.GetCount(kTrue)); 274 EXPECT_EQ(0, recorder.GetCount(kTrue));
270 EXPECT_EQ(0, recorder.GetCount(kFalse)); 275 EXPECT_EQ(0, recorder.GetCount(kFalse));
271 translate::ReportSimilarLanguageMatch(true); 276 translate::ReportSimilarLanguageMatch(true);
272 EXPECT_EQ(1, recorder.GetCount(kTrue)); 277 EXPECT_EQ(1, recorder.GetCount(kTrue));
273 EXPECT_EQ(0, recorder.GetCount(kFalse)); 278 EXPECT_EQ(0, recorder.GetCount(kFalse));
274 translate::ReportSimilarLanguageMatch(false); 279 translate::ReportSimilarLanguageMatch(false);
275 EXPECT_EQ(1, recorder.GetCount(kTrue)); 280 EXPECT_EQ(1, recorder.GetCount(kTrue));
276 EXPECT_EQ(1, recorder.GetCount(kFalse)); 281 EXPECT_EQ(1, recorder.GetCount(kFalse));
277 } 282 }
278 283
279 TEST(TranslateMetricsTest, ReportLanguageDetectionTime) { 284 TEST(TranslateMetricsTest, ReportLanguageDetectionTime) {
280 MetricsRecorder recorder( 285 MetricsRecorder recorder(
281 translate::GetMetricsName(translate::UMA_LANGUAGE_DETECTION)); 286 translate::metrics_internal::kRenderer4LanguageDetection);
282 recorder.CheckTotalCount(0); 287 recorder.CheckTotalCount(0);
283 TimeTicks begin = TimeTicks::Now(); 288 TimeTicks begin = TimeTicks::Now();
284 TimeTicks end = begin + base::TimeDelta::FromMicroseconds(9009); 289 TimeTicks end = begin + base::TimeDelta::FromMicroseconds(9009);
285 translate::ReportLanguageDetectionTime(begin, end); 290 translate::ReportLanguageDetectionTime(begin, end);
286 recorder.CheckValueInLogs(9.009); 291 recorder.CheckValueInLogs(9.009);
287 recorder.CheckTotalCount(1); 292 recorder.CheckTotalCount(1);
288 } 293 }
289 294
290 TEST(TranslateMetricsTest, ReportLanguageDetectionConflict) { 295 TEST(TranslateMetricsTest, ReportLanguageDetectionConflict) {
291 MetricsRecorder recorder( 296 MetricsRecorder recorder(
292 translate::GetMetricsName(translate::UMA_LANGUAGE_DETECTION_CONFLICT)); 297 translate::metrics_internal::kTranslateLanguageDetectionConflict);
293 recorder.CheckTotalCount(0); 298 recorder.CheckTotalCount(0);
294 299
295 translate::ReportLanguageDetectionConflict("en", "es"); 300 translate::ReportLanguageDetectionConflict("en", "es");
296 recorder.CheckTotalCount(1); 301 recorder.CheckTotalCount(1);
297 EXPECT_EQ(recorder.GetCount(base::HashMetricName("en,es")), 1); 302 EXPECT_EQ(recorder.GetCount(base::HashMetricName("en,es")), 1);
298 303
299 translate::ReportLanguageDetectionConflict("en", "es"); 304 translate::ReportLanguageDetectionConflict("en", "es");
300 recorder.CheckTotalCount(2); 305 recorder.CheckTotalCount(2);
301 EXPECT_EQ(recorder.GetCount(base::HashMetricName("en,es")), 2); 306 EXPECT_EQ(recorder.GetCount(base::HashMetricName("en,es")), 2);
302 307
303 translate::ReportLanguageDetectionConflict("en-AU", "ru-Latn"); 308 translate::ReportLanguageDetectionConflict("en-AU", "ru-Latn");
304 recorder.CheckTotalCount(3); 309 recorder.CheckTotalCount(3);
305 EXPECT_EQ(recorder.GetCount(base::HashMetricName("en-AU,ru-Latn")), 1); 310 EXPECT_EQ(recorder.GetCount(base::HashMetricName("en-AU,ru-Latn")), 1);
306 311
307 // We don't track "en-XX" or "en-YY" as page codes. 312 // We don't track "en-XX" or "en-YY" as page codes.
308 translate::ReportLanguageDetectionConflict("en-XX", "es"); 313 translate::ReportLanguageDetectionConflict("en-XX", "es");
309 translate::ReportLanguageDetectionConflict("en-YY", "es"); 314 translate::ReportLanguageDetectionConflict("en-YY", "es");
310 recorder.CheckTotalCount(5); 315 recorder.CheckTotalCount(5);
311 EXPECT_EQ(recorder.GetCount(base::HashMetricName("other,es")), 2); 316 EXPECT_EQ(recorder.GetCount(base::HashMetricName("other,es")), 2);
312 } 317 }
313 318
314 } // namespace translate 319 } // namespace translate
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698