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

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

Issue 2755093002: predictors: Mark before_first_contentful_paint for resources fetched before fcp. (Closed)
Patch Set: Just check db. Created 3 years, 7 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/resource_prefetch_predictor _page_load_metrics_observer.h" 5 #include "chrome/browser/page_load_metrics/observers/resource_prefetch_predictor _page_load_metrics_observer.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_ test_harness.h" 8 #include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_ test_harness.h"
9 #include "chrome/browser/predictors/resource_prefetch_common.h" 9 #include "chrome/browser/predictors/resource_prefetch_common.h"
10 #include "chrome/browser/predictors/resource_prefetch_predictor.h" 10 #include "chrome/browser/predictors/resource_prefetch_predictor.h"
11 #include "chrome/browser/sessions/session_tab_helper.h"
alexilin 2017/04/28 11:22:03 nit: Do we need this include?
trevordixon 2017/04/28 12:39:54 Deleted.
11 #include "chrome/test/base/testing_profile.h" 12 #include "chrome/test/base/testing_profile.h"
12 #include "content/public/test/test_browser_thread_bundle.h" 13 #include "content/public/test/test_browser_thread_bundle.h"
13 #include "testing/gmock/include/gmock/gmock.h" 14 #include "testing/gmock/include/gmock/gmock.h"
14 15
15 using predictors::ResourcePrefetchPredictor; 16 using predictors::ResourcePrefetchPredictor;
16 17
17 class MockResourcePrefetchPredictor : public ResourcePrefetchPredictor { 18 class MockResourcePrefetchPredictor : public ResourcePrefetchPredictor {
18 public: 19 public:
19 MockResourcePrefetchPredictor( 20 MockResourcePrefetchPredictor(
20 const predictors::ResourcePrefetchPredictorConfig& config, 21 const predictors::ResourcePrefetchPredictorConfig& config,
(...skipping 20 matching lines...) Expand all
41 timing_.paint_timing.first_contentful_paint = 42 timing_.paint_timing.first_contentful_paint =
42 base::TimeDelta::FromSeconds(3); 43 base::TimeDelta::FromSeconds(3);
43 timing_.paint_timing.first_meaningful_paint = 44 timing_.paint_timing.first_meaningful_paint =
44 base::TimeDelta::FromSeconds(4); 45 base::TimeDelta::FromSeconds(4);
45 PopulateRequiredTimingFields(&timing_); 46 PopulateRequiredTimingFields(&timing_);
46 } 47 }
47 48
48 void RegisterObservers(page_load_metrics::PageLoadTracker* tracker) override { 49 void RegisterObservers(page_load_metrics::PageLoadTracker* tracker) override {
49 tracker->AddObserver( 50 tracker->AddObserver(
50 base::MakeUnique<ResourcePrefetchPredictorPageLoadMetricsObserver>( 51 base::MakeUnique<ResourcePrefetchPredictorPageLoadMetricsObserver>(
51 predictor_.get())); 52 predictor_.get(), web_contents()));
52 } 53 }
53 54
54 std::unique_ptr<testing::StrictMock<MockResourcePrefetchPredictor>> 55 std::unique_ptr<testing::StrictMock<MockResourcePrefetchPredictor>>
55 predictor_; 56 predictor_;
56 page_load_metrics::PageLoadTiming timing_; 57 page_load_metrics::PageLoadTiming timing_;
57 }; 58 };
58 59
59 TEST_F(ResourcePrefetchPredictorPageLoadMetricsObserverTest, 60 TEST_F(ResourcePrefetchPredictorPageLoadMetricsObserverTest,
60 PrefetchableIsRecorded) { 61 PrefetchableIsRecorded) {
61 const GURL main_frame_url("https://www.google.com"); 62 const GURL main_frame_url("https://www.google.com");
(...skipping 16 matching lines...) Expand all
78 .WillOnce(testing::Return(false)); 79 .WillOnce(testing::Return(false));
79 80
80 NavigateAndCommit(main_frame_url); 81 NavigateAndCommit(main_frame_url);
81 SimulateTimingUpdate(timing_); 82 SimulateTimingUpdate(timing_);
82 83
83 histogram_tester().ExpectTotalCount( 84 histogram_tester().ExpectTotalCount(
84 internal::kHistogramResourcePrefetchPredictorFirstContentfulPaint, 0); 85 internal::kHistogramResourcePrefetchPredictorFirstContentfulPaint, 0);
85 histogram_tester().ExpectTotalCount( 86 histogram_tester().ExpectTotalCount(
86 internal::kHistogramResourcePrefetchPredictorFirstMeaningfulPaint, 0); 87 internal::kHistogramResourcePrefetchPredictorFirstMeaningfulPaint, 0);
87 } 88 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698