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

Side by Side Diff: chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_observer_unittest.cc

Issue 2927453002: Make NQE a derived class of NetworkQualityProvider (Closed)
Patch Set: some more IWYU fixes Created 3 years, 6 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 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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/page_load_metrics/observers/ukm_page_load_metrics_obser ver.h" 5 #include "chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_obser ver.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "base/metrics/metrics_hashes.h" 8 #include "base/metrics/metrics_hashes.h"
9 #include "base/optional.h" 9 #include "base/optional.h"
10 #include "base/time/time.h" 10 #include "base/time/time.h"
11 #include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_ test_harness.h" 11 #include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_ test_harness.h"
12 #include "chrome/test/base/testing_browser_process.h" 12 #include "chrome/test/base/testing_browser_process.h"
13 #include "components/ukm/test_ukm_recorder.h" 13 #include "components/ukm/test_ukm_recorder.h"
14 #include "components/ukm/ukm_source.h" 14 #include "components/ukm/ukm_source.h"
15 #include "net/nqe/effective_connection_type.h"
16 #include "net/nqe/network_quality_provider.h"
15 #include "testing/gmock/include/gmock/gmock.h" 17 #include "testing/gmock/include/gmock/gmock.h"
16 18
17 using testing::AnyNumber; 19 using testing::AnyNumber;
18 using testing::Mock; 20 using testing::Mock;
19 using testing::Return; 21 using testing::Return;
20 22
21 namespace { 23 namespace {
22 24
23 const char kTestUrl1[] = "https://www.google.com/"; 25 const char kTestUrl1[] = "https://www.google.com/";
24 const char kTestUrl2[] = "https://www.example.com/"; 26 const char kTestUrl2[] = "https://www.example.com/";
25 27
26 class MockNetworkQualityProvider 28 class MockNetworkQualityProvider : public net::NetworkQualityProvider {
27 : public net::NetworkQualityEstimator::NetworkQualityProvider {
28 public: 29 public:
29 MOCK_CONST_METHOD0(GetEffectiveConnectionType, 30 MOCK_CONST_METHOD0(GetEffectiveConnectionType,
30 net::EffectiveConnectionType()); 31 net::EffectiveConnectionType());
31 MOCK_CONST_METHOD0(GetHttpRTT, base::Optional<base::TimeDelta>()); 32 MOCK_CONST_METHOD0(GetHttpRTT, base::Optional<base::TimeDelta>());
32 MOCK_CONST_METHOD0(GetTransportRTT, base::Optional<base::TimeDelta>()); 33 MOCK_CONST_METHOD0(GetTransportRTT, base::Optional<base::TimeDelta>());
33 MOCK_METHOD1(
34 AddEffectiveConnectionTypeObserver,
35 void(net::NetworkQualityEstimator::EffectiveConnectionTypeObserver*));
36 MOCK_METHOD1(
37 RemoveEffectiveConnectionTypeObserver,
38 void(net::NetworkQualityEstimator::EffectiveConnectionTypeObserver*));
39 MOCK_METHOD1(
40 AddRTTAndThroughputEstimatesObserver,
41 void(net::NetworkQualityEstimator::RTTAndThroughputEstimatesObserver*));
42 MOCK_METHOD1(
43 RemoveRTTAndThroughputEstimatesObserver,
44 void(net::NetworkQualityEstimator::RTTAndThroughputEstimatesObserver*));
45 }; 34 };
46 35
47 } // namespace 36 } // namespace
48 37
49 class UkmPageLoadMetricsObserverTest 38 class UkmPageLoadMetricsObserverTest
50 : public page_load_metrics::PageLoadMetricsObserverTestHarness { 39 : public page_load_metrics::PageLoadMetricsObserverTestHarness {
51 protected: 40 protected:
52 void RegisterObservers(page_load_metrics::PageLoadTracker* tracker) override { 41 void RegisterObservers(page_load_metrics::PageLoadTracker* tracker) override {
53 tracker->AddObserver(base::MakeUnique<UkmPageLoadMetricsObserver>( 42 tracker->AddObserver(base::MakeUnique<UkmPageLoadMetricsObserver>(
54 &mock_network_quality_provider_)); 43 &mock_network_quality_provider_));
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 349
361 EXPECT_GE(ukm_entry_count(), 1ul); 350 EXPECT_GE(ukm_entry_count(), 1ul);
362 ukm::mojom::UkmEntryPtr entry = GetMergedEntryForSourceID(source->id()); 351 ukm::mojom::UkmEntryPtr entry = GetMergedEntryForSourceID(source->id());
363 EXPECT_EQ(entry->source_id, source->id()); 352 EXPECT_EQ(entry->source_id, source->id());
364 EXPECT_EQ(entry->event_hash, 353 EXPECT_EQ(entry->event_hash,
365 base::HashMetricName(internal::kUkmPageLoadEventName)); 354 base::HashMetricName(internal::kUkmPageLoadEventName));
366 EXPECT_FALSE(entry->metrics.empty()); 355 EXPECT_FALSE(entry->metrics.empty());
367 ExpectMetric(internal::kUkmPageTransition, ui::PAGE_TRANSITION_RELOAD, 356 ExpectMetric(internal::kUkmPageTransition, ui::PAGE_TRANSITION_RELOAD,
368 entry.get()); 357 entry.get());
369 } 358 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698