summaryrefslogtreecommitdiffstats
path: root/chrome/renderer
diff options
context:
space:
mode:
authordpapad@chromium.org <dpapad@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-02 17:36:58 +0000
committerdpapad@chromium.org <dpapad@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-02 17:36:58 +0000
commit61773e585b0d60ba2e0b4c439af5b5b67b05ca7e (patch)
treee1fd88d99ff8764c0f4b89d8c0a2eddb979de288 /chrome/renderer
parentb164600b6a2999cb60dcaac4797ceb4409cb2a5b (diff)
downloadchromium_src-61773e585b0d60ba2e0b4c439af5b5b67b05ca7e.zip
chromium_src-61773e585b0d60ba2e0b4c439af5b5b67b05ca7e.tar.gz
chromium_src-61773e585b0d60ba2e0b4c439af5b5b67b05ca7e.tar.bz2
Revert 197933 "Translate: adding new UMAs to know language detec..."
The newly added tests are failing on Linux Clang (dbg). > Translate: adding new UMAs to know language detection quality > > - TranslateContentLanguage: > Counts Content-Language availability and reliability. > - TranslateLanguageVerification: > Counts how CLD think about Content-Language. > > BUG=179277 > TEST=unit_tests --gtest_filter='TranslateHelperMetricsTest.*' > > Review URL: https://chromiumcodereview.appspot.com/14763002 TBR=toyoshim@chromium.org Review URL: https://codereview.chromium.org/14854012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197935 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer')
-rw-r--r--chrome/renderer/translate/translate_helper.cc23
-rw-r--r--chrome/renderer/translate/translate_helper_metrics.cc41
-rw-r--r--chrome/renderer/translate/translate_helper_metrics.h44
-rw-r--r--chrome/renderer/translate/translate_helper_metrics_unittest.cc129
4 files changed, 3 insertions, 234 deletions
diff --git a/chrome/renderer/translate/translate_helper.cc b/chrome/renderer/translate/translate_helper.cc
index 4d81b6e..1664233 100644
--- a/chrome/renderer/translate/translate_helper.cc
+++ b/chrome/renderer/translate/translate_helper.cc
@@ -13,7 +13,6 @@
#include "base/utf_string_conversions.h"
#include "chrome/common/chrome_constants.h"
#include "chrome/common/render_messages.h"
-#include "chrome/renderer/translate/translate_helper_metrics.h"
#include "content/public/renderer/render_view.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebElement.h"
@@ -318,37 +317,21 @@ std::string TranslateHelper::DeterminePageLanguage(const std::string& code,
ResetInvalidLanguageCode(&language);
VLOG(9) << "Content-Language based language code: " << language;
- TranslateHelperMetrics::ReportContentLanguage(code, language);
-
#if defined(ENABLE_LANGUAGE_DETECTION)
// If |language| is empty, just use CLD result even though it might be
// chrome::kUnknownLanguageCode.
- if (language.empty()) {
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_ONLY);
+ if (language.empty())
return cld_language;
- }
- if (cld_language == chrome::kUnknownLanguageCode) {
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_UNKNOWN);
- } else if (language.size() >= 2 &&
- cld_language.find(language.c_str(), 0, 2) != 0) {
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_DISAGREE);
+ if (cld_language != chrome::kUnknownLanguageCode &&
+ cld_language.find(language.c_str(), 0, 2) != 0) {
// Content-Language value might be wrong because CLD says that this page
// is written in another language with confidence.
// In this case, Chrome doesn't rely on any of the language codes, and
// gives up suggesting a translation.
VLOG(9) << "CLD disagreed with the Content-Language value with confidence.";
return std::string(chrome::kUnknownLanguageCode);
- } else {
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_AGREE);
}
-#else // defined(ENABLE_LANGUAGE_DETECTION)
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_DISABLED);
#endif // defined(ENABLE_LANGUAGE_DETECTION)
return language;
diff --git a/chrome/renderer/translate/translate_helper_metrics.cc b/chrome/renderer/translate/translate_helper_metrics.cc
deleted file mode 100644
index 26463fd..0000000
--- a/chrome/renderer/translate/translate_helper_metrics.cc
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/renderer/translate/translate_helper_metrics.h"
-
-#include "base/metrics/histogram.h"
-
-namespace {
-
-const char kTranslateContentLanguage[] = "Translate.ContentLanguage";
-const char kTranslateLanguageVerification[] = "Translate.LanguageVerification";
-
-} // namespace
-
-namespace TranslateHelperMetrics {
-
-void ReportContentLanguage(const std::string& provided_code,
- const std::string& revised_code) {
- if (provided_code.empty()) {
- UMA_HISTOGRAM_ENUMERATION(kTranslateContentLanguage,
- CONTENT_LANGUAGE_NOT_PROVIDED,
- CONTENT_LANGUAGE_MAX);
- } else if (provided_code == revised_code) {
- UMA_HISTOGRAM_ENUMERATION(kTranslateContentLanguage,
- CONTENT_LANGUAGE_VALID,
- CONTENT_LANGUAGE_MAX);
- } else {
- UMA_HISTOGRAM_ENUMERATION(kTranslateContentLanguage,
- CONTENT_LANGUAGE_INVALID,
- CONTENT_LANGUAGE_MAX);
- }
-}
-
-void ReportLanguageVerification(LanguageVerificationType type) {
- UMA_HISTOGRAM_ENUMERATION(kTranslateLanguageVerification,
- type,
- LANGUAGE_VERIFICATION_MAX);
-}
-
-} // namespace TranslateHelperMetrics
diff --git a/chrome/renderer/translate/translate_helper_metrics.h b/chrome/renderer/translate/translate_helper_metrics.h
deleted file mode 100644
index 301c482..0000000
--- a/chrome/renderer/translate/translate_helper_metrics.h
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_
-#define CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_
-
-#include <string>
-
-namespace TranslateHelperMetrics {
-
-// A page may provide a Content-Language HTTP header or a META tag.
-// TranslateHelper checks if a server provides a valid Content-Language.
-enum ContentLanguageType {
- CONTENT_LANGUAGE_NOT_PROVIDED,
- CONTENT_LANGUAGE_VALID,
- CONTENT_LANGUAGE_INVALID,
- CONTENT_LANGUAGE_MAX,
-};
-
-// When a valid Content-Language is provided, TranslateHelper checks if a
-// server provided Content-Language matches to a language CLD determined.
-enum LanguageVerificationType {
- LANGUAGE_VERIFICATION_CLD_DISABLED,
- LANGUAGE_VERIFICATION_CLD_ONLY,
- LANGUAGE_VERIFICATION_UNKNOWN,
- LANGUAGE_VERIFICATION_CLD_AGREE,
- LANGUAGE_VERIFICATION_CLD_DISAGREE,
- LANGUAGE_VERIFICATION_MAX,
-};
-
-// Called after TranslateHelper verifies a server providing Content-Language
-// header. |provided_code| contains a Content-Language header value which
-// server provides. It can be empty string when a server doesn't provide it.
-// |revised_code| is a value modified by format error corrector.
-void ReportContentLanguage(const std::string& provided_code,
- const std::string& revised_code);
-
-// Called when CLD verifies Content-Language header.
-void ReportLanguageVerification(LanguageVerificationType type);
-
-} // namespace TranslateHelperMetrics
-
-#endif // CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_
diff --git a/chrome/renderer/translate/translate_helper_metrics_unittest.cc b/chrome/renderer/translate/translate_helper_metrics_unittest.cc
deleted file mode 100644
index 821095c..0000000
--- a/chrome/renderer/translate/translate_helper_metrics_unittest.cc
+++ /dev/null
@@ -1,129 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/renderer/translate/translate_helper_metrics.h"
-
-#include "base/basictypes.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/metrics/histogram.h"
-#include "base/metrics/histogram_samples.h"
-#include "base/metrics/statistics_recorder.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "testing/platform_test.h"
-
-using base::HistogramBase;
-using base::HistogramSamples;
-using base::StatisticsRecorder;
-
-namespace {
-
-const char kTranslateContentLanguage[] = "Translate.ContentLanguage";
-const char kTranslateLanguageVerification[] = "Translate.LanguageVerification";
-
-class MetricsRecorder {
- public:
- explicit MetricsRecorder(const char* key)
- : key_(key),
- samples_(NULL) {
- StatisticsRecorder::Initialize();
- }
-
- void CheckContentLanguage(int expected_not_provided,
- int expected_valid,
- int expected_invalid) {
- ASSERT_EQ(kTranslateContentLanguage, key_);
-
- Snapshot();
-
- EXPECT_EQ(
- expected_not_provided,
- GetCount(TranslateHelperMetrics::CONTENT_LANGUAGE_NOT_PROVIDED));
- EXPECT_EQ(
- expected_valid,
- GetCount(TranslateHelperMetrics::CONTENT_LANGUAGE_VALID));
- EXPECT_EQ(
- expected_invalid,
- GetCount(TranslateHelperMetrics::CONTENT_LANGUAGE_INVALID));
- }
-
- void CheckLanguageVerification(int expected_cld_disabled,
- int expected_cld_only,
- int expected_unknown,
- int expected_cld_agree,
- int expected_cld_disagree) {
- ASSERT_EQ(kTranslateLanguageVerification, key_);
-
- Snapshot();
-
- EXPECT_EQ(
- expected_cld_disabled,
- GetCount(TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_DISABLED));
- EXPECT_EQ(
- expected_cld_only,
- GetCount(TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_ONLY));
- EXPECT_EQ(
- expected_unknown,
- GetCount(TranslateHelperMetrics::LANGUAGE_VERIFICATION_UNKNOWN));
- EXPECT_EQ(
- expected_cld_agree,
- GetCount(TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_AGREE));
- EXPECT_EQ(
- expected_cld_disagree,
- GetCount(TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_DISAGREE));
- }
-
- private:
- void Snapshot() {
- HistogramBase* histogram = StatisticsRecorder::FindHistogram(key_);
- if (!histogram)
- return;
- samples_ = histogram->SnapshotSamples();
- }
-
- HistogramBase::Count GetCount(HistogramBase::Sample value) {
- if (!samples_.get())
- return 0;
- return samples_->GetCount(value);
- }
-
- std::string key_;
- scoped_ptr<HistogramSamples> samples_;
-
- DISALLOW_COPY_AND_ASSIGN(MetricsRecorder);
-};
-
-} // namespace
-
-TEST(TranslateHelperMetricsTest, ReportContentLanguage) {
- MetricsRecorder recorder(kTranslateContentLanguage);
-
- recorder.CheckContentLanguage(0, 0, 0);
- TranslateHelperMetrics::ReportContentLanguage(std::string(), std::string());
- recorder.CheckContentLanguage(1, 0, 0);
- TranslateHelperMetrics::ReportContentLanguage("ja_JP", "ja-JP");
- recorder.CheckContentLanguage(1, 0, 1);
- TranslateHelperMetrics::ReportContentLanguage("en", "en");
- recorder.CheckContentLanguage(1, 1, 1);
-}
-
-TEST(TranslateHelperMetricsTest, ReportLanguageVerification) {
- MetricsRecorder recorder(kTranslateLanguageVerification);
-
- recorder.CheckLanguageVerification(0, 0, 0, 0, 0);
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_DISABLED);
- recorder.CheckLanguageVerification(1, 0, 0, 0, 0);
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_ONLY);
- recorder.CheckLanguageVerification(1, 1, 0, 0, 0);
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_UNKNOWN);
- recorder.CheckLanguageVerification(1, 1, 1, 0, 0);
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_AGREE);
- recorder.CheckLanguageVerification(1, 1, 1, 1, 0);
- TranslateHelperMetrics::ReportLanguageVerification(
- TranslateHelperMetrics::LANGUAGE_VERIFICATION_CLD_DISAGREE);
- recorder.CheckLanguageVerification(1, 1, 1, 1, 1);
-}