Commit 6c949ae1 authored by Julia Tuttle's avatar Julia Tuttle Committed by Commit Bot

Network Error Logging: Move from //components to //net.

Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Ic7038de9351cd34c22a23a0e60694e7330e1ab66
Reviewed-on: https://chromium-review.googlesource.com/766730Reviewed-by: default avatarJohn Abd-El-Malek <jam@chromium.org>
Commit-Queue: Julia Tuttle <juliatuttle@chromium.org>
Cr-Commit-Position: refs/heads/master@{#517425}
parent 220c3a64
...@@ -200,7 +200,6 @@ test("components_unittests") { ...@@ -200,7 +200,6 @@ test("components_unittests") {
"//components/language:unit_tests", "//components/language:unit_tests",
"//components/link_header_util:unit_tests", "//components/link_header_util:unit_tests",
"//components/navigation_interception:unit_tests", "//components/navigation_interception:unit_tests",
"//components/network_error_logging:unit_tests",
"//components/network_hints/renderer:unit_tests", "//components/network_hints/renderer:unit_tests",
"//components/offline_pages:unit_tests", "//components/offline_pages:unit_tests",
"//components/optimization_guide:unit_tests", "//components/optimization_guide:unit_tests",
......
# Copyright 2017 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.
component("network_error_logging") {
sources = [
"network_error_logging_export.h",
"network_error_logging_service.cc",
"network_error_logging_service.h",
]
defines = [ "NETWORK_ERROR_LOGGING_IMPLEMENTATION" ]
deps = [
"//base",
"//net",
"//url",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"network_error_logging_service_unittest.cc",
]
deps = [
":network_error_logging",
"//base",
"//base/test:test_support",
"//net",
"//testing/gtest",
"//url",
]
}
# Copyright 2017 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_rules = [
"+net",
]
juliatuttle@chromium.org
mgersh@chromium.org
# COMPONENT: Internals>Network
// Copyright 2017 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 COMPONENTS_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_EXPORT_H_
#define COMPONENTS_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_EXPORT_H_
#if defined(COMPONENT_BUILD)
#if defined(WIN32)
#if defined(NETWORK_ERROR_LOGGING_IMPLEMENTATION)
#define NETWORK_ERROR_LOGGING_EXPORT __declspec(dllexport)
#else
#define NETWORK_ERROR_LOGGING_EXPORT __declspec(dllimport)
#endif
#else // defined(WIN32)
#if defined(NETWORK_ERROR_LOGGING_IMPLEMENTATION)
#define NETWORK_ERROR_LOGGING_EXPORT __attribute__((visibility("default")))
#else
#define NETWORK_ERROR_LOGGING_EXPORT
#endif
#endif // defined(WIN32)
#else // defined(COMPONENT_BUILD)
#define NETWORK_ERROR_LOGGING_EXPORT
#endif
#endif // COMPONENTS_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_EXPORT_H_
...@@ -1745,6 +1745,8 @@ component("net") { ...@@ -1745,6 +1745,8 @@ component("net") {
if (enable_reporting) { if (enable_reporting) {
sources += [ sources += [
"network_error_logging/network_error_logging_service.cc",
"network_error_logging/network_error_logging_service.h",
"reporting/reporting_browsing_data_remover.cc", "reporting/reporting_browsing_data_remover.cc",
"reporting/reporting_browsing_data_remover.h", "reporting/reporting_browsing_data_remover.h",
"reporting/reporting_cache.cc", "reporting/reporting_cache.cc",
...@@ -5234,6 +5236,7 @@ test("net_unittests") { ...@@ -5234,6 +5236,7 @@ test("net_unittests") {
if (enable_reporting) { if (enable_reporting) {
sources += [ sources += [
"network_error_logging/network_error_logging_service_unittest.cc",
"reporting/reporting_browsing_data_remover_unittest.cc", "reporting/reporting_browsing_data_remover_unittest.cc",
"reporting/reporting_cache_unittest.cc", "reporting/reporting_cache_unittest.cc",
"reporting/reporting_delivery_agent_unittest.cc", "reporting/reporting_delivery_agent_unittest.cc",
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#include "components/network_error_logging/network_error_logging_service.h" #include "net/network_error_logging/network_error_logging_service.h"
#include <memory> #include <memory>
#include <string> #include <string>
...@@ -31,6 +31,8 @@ const base::Feature kNetworkErrorLogging{"NetworkErrorLogging", ...@@ -31,6 +31,8 @@ const base::Feature kNetworkErrorLogging{"NetworkErrorLogging",
} // namespace features } // namespace features
namespace net {
namespace { namespace {
const char kReportToKey[] = "report-to"; const char kReportToKey[] = "report-to";
...@@ -58,47 +60,47 @@ std::string GetSuperdomain(const std::string& domain) { ...@@ -58,47 +60,47 @@ std::string GetSuperdomain(const std::string& domain) {
} }
const struct { const struct {
net::Error error; Error error;
const char* type; const char* type;
} kErrorTypes[] = { } kErrorTypes[] = {
// dns.unreachable? // dns.unreachable?
{net::ERR_NAME_NOT_RESOLVED, "dns.name_not_resolved"}, {ERR_NAME_NOT_RESOLVED, "dns.name_not_resolved"},
{net::ERR_NAME_RESOLUTION_FAILED, "dns.failed"}, {ERR_NAME_RESOLUTION_FAILED, "dns.failed"},
{net::ERR_DNS_TIMED_OUT, "dns.timed_out"}, {ERR_DNS_TIMED_OUT, "dns.timed_out"},
{net::ERR_CONNECTION_TIMED_OUT, "tcp.timed_out"}, {ERR_CONNECTION_TIMED_OUT, "tcp.timed_out"},
{net::ERR_CONNECTION_CLOSED, "tcp.closed"}, {ERR_CONNECTION_CLOSED, "tcp.closed"},
{net::ERR_CONNECTION_RESET, "tcp.reset"}, {ERR_CONNECTION_RESET, "tcp.reset"},
{net::ERR_CONNECTION_REFUSED, "tcp.refused"}, {ERR_CONNECTION_REFUSED, "tcp.refused"},
{net::ERR_CONNECTION_ABORTED, "tcp.aborted"}, {ERR_CONNECTION_ABORTED, "tcp.aborted"},
{net::ERR_ADDRESS_INVALID, "tcp.address_invalid"}, {ERR_ADDRESS_INVALID, "tcp.address_invalid"},
{net::ERR_ADDRESS_UNREACHABLE, "tcp.address_unreachable"}, {ERR_ADDRESS_UNREACHABLE, "tcp.address_unreachable"},
{net::ERR_CONNECTION_FAILED, "tcp.failed"}, {ERR_CONNECTION_FAILED, "tcp.failed"},
{net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH, "tls.version_or_cipher_mismatch"}, {ERR_SSL_VERSION_OR_CIPHER_MISMATCH, "tls.version_or_cipher_mismatch"},
{net::ERR_BAD_SSL_CLIENT_AUTH_CERT, "tls.bad_client_auth_cert"}, {ERR_BAD_SSL_CLIENT_AUTH_CERT, "tls.bad_client_auth_cert"},
{net::ERR_CERT_COMMON_NAME_INVALID, "tls.cert.name_invalid"}, {ERR_CERT_COMMON_NAME_INVALID, "tls.cert.name_invalid"},
{net::ERR_CERT_DATE_INVALID, "tls.cert.date_invalid"}, {ERR_CERT_DATE_INVALID, "tls.cert.date_invalid"},
{net::ERR_CERT_AUTHORITY_INVALID, "tls.cert.authority_invalid"}, {ERR_CERT_AUTHORITY_INVALID, "tls.cert.authority_invalid"},
{net::ERR_CERT_INVALID, "tls.cert.invalid"}, {ERR_CERT_INVALID, "tls.cert.invalid"},
{net::ERR_CERT_REVOKED, "tls.cert.revoked"}, {ERR_CERT_REVOKED, "tls.cert.revoked"},
{net::ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN, {ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN,
"tls.cert.pinned_key_not_in_cert_chain"}, "tls.cert.pinned_key_not_in_cert_chain"},
{net::ERR_SSL_PROTOCOL_ERROR, "tls.protocol.error"}, {ERR_SSL_PROTOCOL_ERROR, "tls.protocol.error"},
// tls.failed? // tls.failed?
// http.protocol.error? // http.protocol.error?
{net::ERR_INVALID_HTTP_RESPONSE, "http.response.invalid"}, {ERR_INVALID_HTTP_RESPONSE, "http.response.invalid"},
{net::ERR_TOO_MANY_REDIRECTS, "http.response.redirect_loop"}, {ERR_TOO_MANY_REDIRECTS, "http.response.redirect_loop"},
// http.failed? // http.failed?
{net::ERR_ABORTED, "abandoned"}, {ERR_ABORTED, "abandoned"},
// unknown? // unknown?
// TODO(juliatuttle): Surely there are more errors we want here. // TODO(juliatuttle): Surely there are more errors we want here.
}; };
bool GetTypeFromNetError(net::Error error, std::string* type_out) { bool GetTypeFromNetError(Error error, std::string* type_out) {
for (size_t i = 0; i < arraysize(kErrorTypes); ++i) { for (size_t i = 0; i < arraysize(kErrorTypes); ++i) {
if (kErrorTypes[i].error == error) { if (kErrorTypes[i].error == error) {
*type_out = kErrorTypes[i].type; *type_out = kErrorTypes[i].type;
...@@ -110,8 +112,6 @@ bool GetTypeFromNetError(net::Error error, std::string* type_out) { ...@@ -110,8 +112,6 @@ bool GetTypeFromNetError(net::Error error, std::string* type_out) {
} // namespace } // namespace
namespace network_error_logging {
// static: // static:
const char NetworkErrorLoggingService::kReportType[] = "network-error"; const char NetworkErrorLoggingService::kReportType[] = "network-error";
...@@ -137,7 +137,7 @@ NetworkErrorLoggingService::Create() { ...@@ -137,7 +137,7 @@ NetworkErrorLoggingService::Create() {
NetworkErrorLoggingService::~NetworkErrorLoggingService() {} NetworkErrorLoggingService::~NetworkErrorLoggingService() {}
void NetworkErrorLoggingService::SetReportingService( void NetworkErrorLoggingService::SetReportingService(
net::ReportingService* reporting_service) { ReportingService* reporting_service) {
reporting_service_ = reporting_service; reporting_service_ = reporting_service;
} }
...@@ -317,13 +317,13 @@ void NetworkErrorLoggingService::MaybeRemoveWildcardPolicy( ...@@ -317,13 +317,13 @@ void NetworkErrorLoggingService::MaybeRemoveWildcardPolicy(
std::unique_ptr<const base::Value> NetworkErrorLoggingService::CreateReportBody( std::unique_ptr<const base::Value> NetworkErrorLoggingService::CreateReportBody(
const std::string& type, const std::string& type,
const net::NetworkErrorLoggingDelegate::ErrorDetails& details) const { const NetworkErrorLoggingDelegate::ErrorDetails& details) const {
auto body = base::MakeUnique<base::DictionaryValue>(); auto body = base::MakeUnique<base::DictionaryValue>();
body->SetString(kUriKey, details.uri.spec()); body->SetString(kUriKey, details.uri.spec());
body->SetString(kReferrerKey, details.referrer.spec()); body->SetString(kReferrerKey, details.referrer.spec());
body->SetString(kServerIpKey, details.server_ip.ToString()); body->SetString(kServerIpKey, details.server_ip.ToString());
std::string protocol = net::NextProtoToString(details.protocol); std::string protocol = NextProtoToString(details.protocol);
if (protocol == "unknown") if (protocol == "unknown")
protocol = ""; protocol = "";
body->SetString(kProtocolKey, protocol); body->SetString(kProtocolKey, protocol);
...@@ -334,4 +334,4 @@ std::unique_ptr<const base::Value> NetworkErrorLoggingService::CreateReportBody( ...@@ -334,4 +334,4 @@ std::unique_ptr<const base::Value> NetworkErrorLoggingService::CreateReportBody(
return std::move(body); return std::move(body);
} }
} // namespace network_error_logging } // namespace net
...@@ -2,8 +2,8 @@ ...@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#ifndef COMPONENTS_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_SERVICE_H_ #ifndef NET_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_SERVICE_H_
#define COMPONENTS_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_SERVICE_H_ #define NET_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_SERVICE_H_
#include <map> #include <map>
#include <memory> #include <memory>
...@@ -14,8 +14,8 @@ ...@@ -14,8 +14,8 @@
#include "base/macros.h" #include "base/macros.h"
#include "base/time/tick_clock.h" #include "base/time/tick_clock.h"
#include "base/time/time.h" #include "base/time/time.h"
#include "components/network_error_logging/network_error_logging_export.h"
#include "net/base/net_errors.h" #include "net/base/net_errors.h"
#include "net/base/net_export.h"
#include "net/url_request/network_error_logging_delegate.h" #include "net/url_request/network_error_logging_delegate.h"
namespace base { namespace base {
...@@ -31,13 +31,13 @@ class Origin; ...@@ -31,13 +31,13 @@ class Origin;
} // namespace url } // namespace url
namespace features { namespace features {
extern const base::Feature NETWORK_ERROR_LOGGING_EXPORT kNetworkErrorLogging; extern const base::Feature NET_EXPORT kNetworkErrorLogging;
} // namespace features } // namespace features
namespace network_error_logging { namespace net {
class NETWORK_ERROR_LOGGING_EXPORT NetworkErrorLoggingService class NET_EXPORT NetworkErrorLoggingService
: public net::NetworkErrorLoggingDelegate { : public NetworkErrorLoggingDelegate {
public: public:
static const char kReportType[]; static const char kReportType[];
...@@ -57,11 +57,11 @@ class NETWORK_ERROR_LOGGING_EXPORT NetworkErrorLoggingService ...@@ -57,11 +57,11 @@ class NETWORK_ERROR_LOGGING_EXPORT NetworkErrorLoggingService
// base::FeatureList. // base::FeatureList.
static std::unique_ptr<NetworkErrorLoggingService> Create(); static std::unique_ptr<NetworkErrorLoggingService> Create();
// net::NetworkErrorLoggingDelegate implementation: // NetworkErrorLoggingDelegate implementation:
~NetworkErrorLoggingService() override; ~NetworkErrorLoggingService() override;
void SetReportingService(net::ReportingService* reporting_service) override; void SetReportingService(ReportingService* reporting_service) override;
void OnHeader(const url::Origin& origin, const std::string& value) override; void OnHeader(const url::Origin& origin, const std::string& value) override;
...@@ -116,7 +116,7 @@ class NETWORK_ERROR_LOGGING_EXPORT NetworkErrorLoggingService ...@@ -116,7 +116,7 @@ class NETWORK_ERROR_LOGGING_EXPORT NetworkErrorLoggingService
std::unique_ptr<base::TickClock> tick_clock_; std::unique_ptr<base::TickClock> tick_clock_;
// Unowned. // Unowned.
net::ReportingService* reporting_service_; ReportingService* reporting_service_;
PolicyMap policies_; PolicyMap policies_;
WildcardPolicyMap wildcard_policies_; WildcardPolicyMap wildcard_policies_;
...@@ -124,6 +124,6 @@ class NETWORK_ERROR_LOGGING_EXPORT NetworkErrorLoggingService ...@@ -124,6 +124,6 @@ class NETWORK_ERROR_LOGGING_EXPORT NetworkErrorLoggingService
DISALLOW_COPY_AND_ASSIGN(NetworkErrorLoggingService); DISALLOW_COPY_AND_ASSIGN(NetworkErrorLoggingService);
}; };
} // namespace network_error_logging } // namespace net
#endif // COMPONENTS_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_SERVICE_H_ #endif // NET_NETWORK_ERROR_LOGGING_NETWORK_ERROR_LOGGING_SERVICE_H_
...@@ -14,18 +14,19 @@ ...@@ -14,18 +14,19 @@
#include "base/test/values_test_util.h" #include "base/test/values_test_util.h"
#include "base/time/time.h" #include "base/time/time.h"
#include "base/values.h" #include "base/values.h"
#include "components/network_error_logging/network_error_logging_service.h"
#include "net/base/ip_address.h" #include "net/base/ip_address.h"
#include "net/base/net_errors.h" #include "net/base/net_errors.h"
#include "net/network_error_logging/network_error_logging_service.h"
#include "net/reporting/reporting_service.h" #include "net/reporting/reporting_service.h"
#include "net/socket/next_proto.h" #include "net/socket/next_proto.h"
#include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest/include/gtest/gtest.h"
#include "url/gurl.h" #include "url/gurl.h"
#include "url/origin.h" #include "url/origin.h"
namespace net {
namespace { namespace {
class TestReportingService : public net::ReportingService { class TestReportingService : public ReportingService {
public: public:
struct Report { struct Report {
Report() {} Report() {}
...@@ -57,7 +58,7 @@ class TestReportingService : public net::ReportingService { ...@@ -57,7 +58,7 @@ class TestReportingService : public net::ReportingService {
const std::vector<Report>& reports() const { return reports_; } const std::vector<Report>& reports() const { return reports_; }
// net::ReportingService implementation: // ReportingService implementation:
~TestReportingService() override {} ~TestReportingService() override {}
...@@ -89,7 +90,7 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test { ...@@ -89,7 +90,7 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test {
protected: protected:
NetworkErrorLoggingServiceTest() { NetworkErrorLoggingServiceTest() {
scoped_feature_list_.InitAndEnableFeature(features::kNetworkErrorLogging); scoped_feature_list_.InitAndEnableFeature(features::kNetworkErrorLogging);
service_ = network_error_logging::NetworkErrorLoggingService::Create(); service_ = NetworkErrorLoggingService::Create();
CreateReportingService(); CreateReportingService();
} }
...@@ -107,15 +108,14 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test { ...@@ -107,15 +108,14 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test {
reporting_service_.reset(); reporting_service_.reset();
} }
net::NetworkErrorLoggingDelegate::ErrorDetails MakeErrorDetails( NetworkErrorLoggingDelegate::ErrorDetails MakeErrorDetails(GURL url,
GURL url, Error error_type) {
net::Error error_type) { NetworkErrorLoggingDelegate::ErrorDetails details;
net::NetworkErrorLoggingDelegate::ErrorDetails details;
details.uri = url; details.uri = url;
details.referrer = kReferrer_; details.referrer = kReferrer_;
details.server_ip = net::IPAddress::IPv4AllZeros(); details.server_ip = IPAddress::IPv4AllZeros();
details.protocol = net::kProtoUnknown; details.protocol = kProtoUnknown;
details.status_code = 0; details.status_code = 0;
details.elapsed_time = base::TimeDelta::FromSeconds(1); details.elapsed_time = base::TimeDelta::FromSeconds(1);
details.type = error_type; details.type = error_type;
...@@ -123,9 +123,7 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test { ...@@ -123,9 +123,7 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test {
return details; return details;
} }
network_error_logging::NetworkErrorLoggingService* service() { NetworkErrorLoggingService* service() { return service_.get(); }
return service_.get();
}
const std::vector<TestReportingService::Report>& reports() { const std::vector<TestReportingService::Report>& reports() {
return reporting_service_->reports(); return reporting_service_->reports();
} }
...@@ -146,14 +144,13 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test { ...@@ -146,14 +144,13 @@ class NetworkErrorLoggingServiceTest : public ::testing::Test {
const std::string kGroup_ = "group"; const std::string kGroup_ = "group";
const std::string kType_ = const std::string kType_ = NetworkErrorLoggingService::kReportType;
network_error_logging::NetworkErrorLoggingService::kReportType;
const GURL kReferrer_ = GURL("https://referrer.com/"); const GURL kReferrer_ = GURL("https://referrer.com/");
private: private:
base::test::ScopedFeatureList scoped_feature_list_; base::test::ScopedFeatureList scoped_feature_list_;
std::unique_ptr<network_error_logging::NetworkErrorLoggingService> service_; std::unique_ptr<NetworkErrorLoggingService> service_;
std::unique_ptr<TestReportingService> reporting_service_; std::unique_ptr<TestReportingService> reporting_service_;
}; };
...@@ -163,7 +160,7 @@ TEST_F(NetworkErrorLoggingServiceTest, FeatureDisabled) { ...@@ -163,7 +160,7 @@ TEST_F(NetworkErrorLoggingServiceTest, FeatureDisabled) {
base::test::ScopedFeatureList scoped_feature_list; base::test::ScopedFeatureList scoped_feature_list;
scoped_feature_list.InitAndDisableFeature(features::kNetworkErrorLogging); scoped_feature_list.InitAndDisableFeature(features::kNetworkErrorLogging);
auto service = network_error_logging::NetworkErrorLoggingService::Create(); auto service = NetworkErrorLoggingService::Create();
EXPECT_FALSE(service); EXPECT_FALSE(service);
} }
...@@ -176,8 +173,7 @@ TEST_F(NetworkErrorLoggingServiceTest, NoReportingService) { ...@@ -176,8 +173,7 @@ TEST_F(NetworkErrorLoggingServiceTest, NoReportingService) {
service()->OnHeader(kOrigin_, kHeader_); service()->OnHeader(kOrigin_, kHeader_);
service()->OnNetworkError( service()->OnNetworkError(MakeErrorDetails(kUrl_, ERR_CONNECTION_REFUSED));
MakeErrorDetails(kUrl_, net::ERR_CONNECTION_REFUSED));
} }
TEST_F(NetworkErrorLoggingServiceTest, OriginInsecure) { TEST_F(NetworkErrorLoggingServiceTest, OriginInsecure) {
...@@ -187,14 +183,13 @@ TEST_F(NetworkErrorLoggingServiceTest, OriginInsecure) { ...@@ -187,14 +183,13 @@ TEST_F(NetworkErrorLoggingServiceTest, OriginInsecure) {
service()->OnHeader(kInsecureOrigin, kHeader_); service()->OnHeader(kInsecureOrigin, kHeader_);
service()->OnNetworkError( service()->OnNetworkError(
MakeErrorDetails(kInsecureUrl, net::ERR_CONNECTION_REFUSED)); MakeErrorDetails(kInsecureUrl, ERR_CONNECTION_REFUSED));
EXPECT_TRUE(reports().empty()); EXPECT_TRUE(reports().empty());
} }
TEST_F(NetworkErrorLoggingServiceTest, NoPolicyForOrigin) { TEST_F(NetworkErrorLoggingServiceTest, NoPolicyForOrigin) {
service()->OnNetworkError( service()->OnNetworkError(MakeErrorDetails(kUrl_, ERR_CONNECTION_REFUSED));
MakeErrorDetails(kUrl_, net::ERR_CONNECTION_REFUSED));
EXPECT_TRUE(reports().empty()); EXPECT_TRUE(reports().empty());
} }
...@@ -202,8 +197,7 @@ TEST_F(NetworkErrorLoggingServiceTest, NoPolicyForOrigin) { ...@@ -202,8 +197,7 @@ TEST_F(NetworkErrorLoggingServiceTest, NoPolicyForOrigin) {
TEST_F(NetworkErrorLoggingServiceTest, ReportQueued) { TEST_F(NetworkErrorLoggingServiceTest, ReportQueued) {
service()->OnHeader(kOrigin_, kHeader_); service()->OnHeader(kOrigin_, kHeader_);
service()->OnNetworkError( service()->OnNetworkError(MakeErrorDetails(kUrl_, ERR_CONNECTION_REFUSED));
MakeErrorDetails(kUrl_, net::ERR_CONNECTION_REFUSED));
EXPECT_EQ(1u, reports().size()); EXPECT_EQ(1u, reports().size());
EXPECT_EQ(kUrl_, reports()[0].url); EXPECT_EQ(kUrl_, reports()[0].url);
...@@ -212,28 +206,21 @@ TEST_F(NetworkErrorLoggingServiceTest, ReportQueued) { ...@@ -212,28 +206,21 @@ TEST_F(NetworkErrorLoggingServiceTest, ReportQueued) {
const base::DictionaryValue* body; const base::DictionaryValue* body;
ASSERT_TRUE(reports()[0].body->GetAsDictionary(&body)); ASSERT_TRUE(reports()[0].body->GetAsDictionary(&body));
base::ExpectDictStringValue( base::ExpectDictStringValue(kUrl_.spec(), *body,
kUrl_.spec(), *body, NetworkErrorLoggingService::kUriKey);
network_error_logging::NetworkErrorLoggingService::kUriKey); base::ExpectDictStringValue(kReferrer_.spec(), *body,
base::ExpectDictStringValue( NetworkErrorLoggingService::kReferrerKey);
kReferrer_.spec(), *body,
network_error_logging::NetworkErrorLoggingService::kReferrerKey);
// TODO(juliatuttle): Extract these constants. // TODO(juliatuttle): Extract these constants.
base::ExpectDictStringValue( base::ExpectDictStringValue("0.0.0.0", *body,
"0.0.0.0", *body, NetworkErrorLoggingService::kServerIpKey);
network_error_logging::NetworkErrorLoggingService::kServerIpKey); base::ExpectDictStringValue("", *body,
base::ExpectDictStringValue( NetworkErrorLoggingService::kProtocolKey);
"", *body, base::ExpectDictIntegerValue(0, *body,
network_error_logging::NetworkErrorLoggingService::kProtocolKey); NetworkErrorLoggingService::kStatusCodeKey);
base::ExpectDictIntegerValue( base::ExpectDictIntegerValue(1000, *body,
0, *body, NetworkErrorLoggingService::kElapsedTimeKey);
network_error_logging::NetworkErrorLoggingService::kStatusCodeKey); base::ExpectDictStringValue("tcp.refused", *body,
base::ExpectDictIntegerValue( NetworkErrorLoggingService::kTypeKey);
1000, *body,
network_error_logging::NetworkErrorLoggingService::kElapsedTimeKey);
base::ExpectDictStringValue(
"tcp.refused", *body,
network_error_logging::NetworkErrorLoggingService::kTypeKey);
} }
TEST_F(NetworkErrorLoggingServiceTest, MaxAge0) { TEST_F(NetworkErrorLoggingServiceTest, MaxAge0) {
...@@ -241,8 +228,7 @@ TEST_F(NetworkErrorLoggingServiceTest, MaxAge0) { ...@@ -241,8 +228,7 @@ TEST_F(NetworkErrorLoggingServiceTest, MaxAge0) {
service()->OnHeader(kOrigin_, kHeaderMaxAge0_); service()->OnHeader(kOrigin_, kHeaderMaxAge0_);
service()->OnNetworkError( service()->OnNetworkError(MakeErrorDetails(kUrl_, ERR_CONNECTION_REFUSED));
MakeErrorDetails(kUrl_, net::ERR_CONNECTION_REFUSED));
EXPECT_TRUE(reports().empty()); EXPECT_TRUE(reports().empty());
} }
...@@ -252,7 +238,7 @@ TEST_F(NetworkErrorLoggingServiceTest, ...@@ -252,7 +238,7 @@ TEST_F(NetworkErrorLoggingServiceTest,
service()->OnHeader(kOrigin_, kHeader_); service()->OnHeader(kOrigin_, kHeader_);
service()->OnNetworkError( service()->OnNetworkError(
MakeErrorDetails(kUrlDifferentPort_, net::ERR_CONNECTION_REFUSED)); MakeErrorDetails(kUrlDifferentPort_, ERR_CONNECTION_REFUSED));
EXPECT_TRUE(reports().empty()); EXPECT_TRUE(reports().empty());
} }
...@@ -261,7 +247,7 @@ TEST_F(NetworkErrorLoggingServiceTest, ExcludeSubdomainsDoesntMatchSubdomain) { ...@@ -261,7 +247,7 @@ TEST_F(NetworkErrorLoggingServiceTest, ExcludeSubdomainsDoesntMatchSubdomain) {
service()->OnHeader(kOrigin_, kHeader_); service()->OnHeader(kOrigin_, kHeader_);
service()->OnNetworkError( service()->OnNetworkError(
MakeErrorDetails(kUrlSubdomain_, net::ERR_CONNECTION_REFUSED)); MakeErrorDetails(kUrlSubdomain_, ERR_CONNECTION_REFUSED));
EXPECT_TRUE(reports().empty()); EXPECT_TRUE(reports().empty());
} }
...@@ -270,7 +256,7 @@ TEST_F(NetworkErrorLoggingServiceTest, IncludeSubdomainsMatchesDifferentPort) { ...@@ -270,7 +256,7 @@ TEST_F(NetworkErrorLoggingServiceTest, IncludeSubdomainsMatchesDifferentPort) {
service()->OnHeader(kOrigin_, kHeaderIncludeSubdomains_); service()->OnHeader(kOrigin_, kHeaderIncludeSubdomains_);
service()->OnNetworkError( service()->OnNetworkError(
MakeErrorDetails(kUrlDifferentPort_, net::ERR_CONNECTION_REFUSED)); MakeErrorDetails(kUrlDifferentPort_, ERR_CONNECTION_REFUSED));
EXPECT_EQ(1u, reports().size()); EXPECT_EQ(1u, reports().size());
EXPECT_EQ(kUrlDifferentPort_, reports()[0].url); EXPECT_EQ(kUrlDifferentPort_, reports()[0].url);
...@@ -280,7 +266,7 @@ TEST_F(NetworkErrorLoggingServiceTest, IncludeSubdomainsMatchesSubdomain) { ...@@ -280,7 +266,7 @@ TEST_F(NetworkErrorLoggingServiceTest, IncludeSubdomainsMatchesSubdomain) {
service()->OnHeader(kOrigin_, kHeaderIncludeSubdomains_); service()->OnHeader(kOrigin_, kHeaderIncludeSubdomains_);
service()->OnNetworkError( service()->OnNetworkError(
MakeErrorDetails(kUrlSubdomain_, net::ERR_CONNECTION_REFUSED)); MakeErrorDetails(kUrlSubdomain_, ERR_CONNECTION_REFUSED));
EXPECT_EQ(1u, reports().size()); EXPECT_EQ(1u, reports().size());
} }
...@@ -289,10 +275,10 @@ TEST_F(NetworkErrorLoggingServiceTest, ...@@ -289,10 +275,10 @@ TEST_F(NetworkErrorLoggingServiceTest,
IncludeSubdomainsDoesntMatchSuperdomain) { IncludeSubdomainsDoesntMatchSuperdomain) {
service()->OnHeader(kOriginSubdomain_, kHeaderIncludeSubdomains_); service()->OnHeader(kOriginSubdomain_, kHeaderIncludeSubdomains_);
service()->OnNetworkError( service()->OnNetworkError(MakeErrorDetails(kUrl_, ERR_CONNECTION_REFUSED));
MakeErrorDetails(kUrl_, net::ERR_CONNECTION_REFUSED));
EXPECT_TRUE(reports().empty()); EXPECT_TRUE(reports().empty());
} }
} // namespace } // namespace
} // namespace net
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment