0

Remove Google Captcha PLM observer

These metrics are not being used.

Bug: None
Change-Id: I4007b8dd3b19666965a61f059f78aaccc4854628
Reviewed-on: https://chromium-review.googlesource.com/1038905
Reviewed-by: Bryan McQuade <bmcquade@chromium.org>
Reviewed-by: Alexei Svitkine <asvitkine@chromium.org>
Commit-Queue: Charlie Harrison <csharrison@chromium.org>
Cr-Commit-Position: refs/heads/master@{#555458}
This commit is contained in:
Charlie Harrison
2018-05-02 17:43:02 +00:00
committed by Commit Bot
parent 45c3deb020
commit 1295312273
7 changed files with 3 additions and 137 deletions

@ -884,8 +884,6 @@ jumbo_split_static_library("browser") {
"page_load_metrics/observers/document_write_page_load_metrics_observer.h",
"page_load_metrics/observers/from_gws_page_load_metrics_observer.cc",
"page_load_metrics/observers/from_gws_page_load_metrics_observer.h",
"page_load_metrics/observers/google_captcha_observer.cc",
"page_load_metrics/observers/google_captcha_observer.h",
"page_load_metrics/observers/histogram_suffixes.cc",
"page_load_metrics/observers/histogram_suffixes.h",
"page_load_metrics/observers/https_engagement_metrics/https_engagement_page_load_metrics_observer.cc",

@ -1,67 +0,0 @@
// Copyright 2015 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/browser/page_load_metrics/observers/google_captcha_observer.h"
#include "base/metrics/histogram_macros.h"
#include "base/strings/string_util.h"
#include "chrome/browser/page_load_metrics/page_load_metrics_util.h"
#include "chrome/common/page_load_metrics/page_load_timing.h"
#include "net/base/registry_controlled_domains/registry_controlled_domain.h"
namespace google_captcha_observer {
namespace {
const char kGoogleCaptchaEvents[] = "PageLoad.Clients.GoogleCaptcha.Events";
enum GoogleCaptchaEvent {
// A Google CAPTCHA page was shown to the user.
GOOGLE_CAPTCHA_SHOWN,
// A Google CAPTCHA page was solved by the user.
GOOGLE_CAPTCHA_SOLVED,
// Add new values before this final count.
GOOGLE_CAPTCHA_EVENT_BOUNDARY,
};
void RecordGoogleCaptchaEvent(GoogleCaptchaEvent event) {
UMA_HISTOGRAM_ENUMERATION(
kGoogleCaptchaEvents, event,
GOOGLE_CAPTCHA_EVENT_BOUNDARY);
}
} // namespace
bool IsGoogleCaptcha(const GURL& url) {
return (base::StartsWith(url.host_piece(), "ipv4.google.",
base::CompareCase::SENSITIVE)
|| base::StartsWith(url.host_piece(), "ipv6.google.",
base::CompareCase::SENSITIVE))
&& base::StartsWith(url.path_piece(), "/sorry",
base::CompareCase::SENSITIVE);
}
GoogleCaptchaObserver::GoogleCaptchaObserver() {}
page_load_metrics::PageLoadMetricsObserver::ObservePolicy
GoogleCaptchaObserver::OnCommit(content::NavigationHandle* navigation_handle,
ukm::SourceId source_id) {
if (!navigation_handle->IsSameDocument() &&
IsGoogleCaptcha(navigation_handle->GetURL())) {
RecordGoogleCaptchaEvent(GOOGLE_CAPTCHA_SHOWN);
}
return CONTINUE_OBSERVING;
}
page_load_metrics::PageLoadMetricsObserver::ObservePolicy
GoogleCaptchaObserver::OnRedirect(
content::NavigationHandle* navigation_handle) {
if (IsGoogleCaptcha(navigation_handle->GetReferrer().url)) {
RecordGoogleCaptchaEvent(GOOGLE_CAPTCHA_SOLVED);
return STOP_OBSERVING;
}
return CONTINUE_OBSERVING;
}
} // namespace google_captcha_observer

@ -1,34 +0,0 @@
// Copyright 2015 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_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_GOOGLE_CAPTCHA_OBSERVER_H_
#define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_GOOGLE_CAPTCHA_OBSERVER_H_
#include "base/macros.h"
#include "chrome/browser/page_load_metrics/page_load_metrics_observer.h"
#include "components/ukm/ukm_source.h"
namespace google_captcha_observer {
// Returns true if the given URL matches a Google CAPTCHA page.
bool IsGoogleCaptcha(const GURL& url);
class GoogleCaptchaObserver
: public page_load_metrics::PageLoadMetricsObserver {
public:
GoogleCaptchaObserver();
// page_load_metrics::PageLoadMetricsObserver implementation:
ObservePolicy OnCommit(content::NavigationHandle* navigation_handle,
ukm::SourceId source_id) override;
ObservePolicy OnRedirect(
content::NavigationHandle* navigation_handle) override;
private:
DISALLOW_COPY_AND_ASSIGN(GoogleCaptchaObserver);
};
} // namespace google_captcha_observer
#endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_GOOGLE_CAPTCHA_OBSERVER_H_

@ -1,30 +0,0 @@
// Copyright 2015 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/browser/page_load_metrics/observers/google_captcha_observer.h"
#include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.h"
#include "url/gurl.h"
class GoogleCaptchaPageLoadMetricsObserverTest
: public page_load_metrics::PageLoadMetricsObserverTestHarness {};
TEST_F(GoogleCaptchaPageLoadMetricsObserverTest, IsGoogleCaptcha) {
struct {
std::string url;
bool expected;
} test_cases[] = {
{"", false},
{"http://www.google.com/", false},
{"http://www.cnn.com/", false},
{"http://ipv4.google.com/", false},
{"https://ipv4.google.com/sorry/IndexRedirect?continue=http://a", true},
{"https://ipv6.google.com/sorry/IndexRedirect?continue=http://a", true},
{"https://ipv7.google.com/sorry/IndexRedirect?continue=http://a", false},
};
for (const auto& test : test_cases) {
EXPECT_EQ(test.expected,
google_captcha_observer::IsGoogleCaptcha(GURL(test.url)))
<< "for URL: " << test.url;
}
}

@ -19,7 +19,6 @@
#include "chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/google_captcha_observer.h"
#include "chrome/browser/page_load_metrics/observers/https_engagement_metrics/https_engagement_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/local_network_requests_page_load_metrics_observer.h"
@ -96,8 +95,6 @@ void PageLoadMetricsEmbedder::RegisterObservers(
tracker->AddObserver(
std::make_unique<data_reduction_proxy::LoFiPageLoadMetricsObserver>());
tracker->AddObserver(std::make_unique<FromGWSPageLoadMetricsObserver>());
tracker->AddObserver(
std::make_unique<google_captcha_observer::GoogleCaptchaObserver>());
tracker->AddObserver(
std::make_unique<DocumentWritePageLoadMetricsObserver>());
tracker->AddObserver(std::make_unique<MediaPageLoadMetricsObserver>());

@ -2450,7 +2450,6 @@ test("unit_tests") {
"../browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/google_captcha_observer_unittest.cc",
"../browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/local_network_requests_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/lofi_page_load_metrics_observer_unittest.cc",

@ -62059,6 +62059,9 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries.
<histogram name="PageLoad.Clients.GoogleCaptcha.Events"
enum="GoogleCaptchaEvent">
<obsolete>
Deprecated May 2018
</obsolete>
<owner>mdw@chromium.org</owner>
<summary>Events related to Google CAPTCHA pages being seen by users.</summary>
</histogram>