OLD | NEW |
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_tracking_page_load
_metrics_observer.h" | 5 #include "chrome/browser/page_load_metrics/observers/resource_tracking_page_load
_metrics_observer.h" |
6 | 6 |
| 7 #include "chrome/browser/offline_pages/offliner_user_data.h" |
7 #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 "components/offline_pages/core/background/offliner_stub.h" |
8 | 10 |
9 namespace { | 11 namespace { |
10 const char kFakeUrl[] = "http://www.google.com/nothingotseehere.html"; | 12 const char kFakeUrl[] = "http://www.google.com/nothingotseehere.html"; |
11 } // namespace | 13 } // namespace |
12 | 14 |
13 namespace page_load_metrics { | 15 namespace page_load_metrics { |
14 | 16 |
15 class ResourceTrackingPageLoadMetricsObserverTest | 17 class ResourceTrackingPageLoadMetricsObserverTest |
16 : public page_load_metrics::PageLoadMetricsObserverTestHarness { | 18 : public page_load_metrics::PageLoadMetricsObserverTestHarness { |
17 public: | 19 public: |
(...skipping 29 matching lines...) Expand all Loading... |
47 page_load_metrics::ExtraRequestCompleteInfo done_info{ | 49 page_load_metrics::ExtraRequestCompleteInfo done_info{ |
48 GURL(), | 50 GURL(), |
49 -1 /*frame_tree_node_id*/, | 51 -1 /*frame_tree_node_id*/, |
50 false /*was_cached*/, | 52 false /*was_cached*/, |
51 1024 * 40 /* raw_body_bytes */, | 53 1024 * 40 /* raw_body_bytes */, |
52 1024 * 40 /* original_network_content_length */, | 54 1024 * 40 /* original_network_content_length */, |
53 nullptr /* data reduction_proxy */, | 55 nullptr /* data reduction_proxy */, |
54 content::ResourceType::RESOURCE_TYPE_IMAGE, | 56 content::ResourceType::RESOURCE_TYPE_IMAGE, |
55 }; | 57 }; |
56 | 58 |
| 59 // Add some OfflinerUserData to the web_contents so that our tracker will |
| 60 // be called. |
| 61 offline_pages::OfflinerStub offliner_stub; |
| 62 offline_pages::OfflinerUserData::AddToWebContents(web_contents(), |
| 63 &offliner_stub); |
| 64 |
57 // Start the navigation. This will create the page load tracker and register | 65 // Start the navigation. This will create the page load tracker and register |
58 // the observers. | 66 // the observers. |
59 NavigateAndCommit(GURL(kFakeUrl)); | 67 NavigateAndCommit(GURL(kFakeUrl)); |
60 | 68 |
61 // Simulate starting two images, and completing one. | 69 // Simulate starting two images, and completing one. |
62 SimulateStartedResource(start_info_1); | 70 SimulateStartedResource(start_info_1); |
63 SimulateStartedResource(start_info_2); | 71 SimulateStartedResource(start_info_2); |
64 SimulateLoadedResource(done_info); | 72 SimulateLoadedResource(done_info); |
65 | 73 |
66 int64_t started = -1; | 74 int64_t resource_watcher_started = -1; |
67 int64_t completed = -1; | 75 int64_t resource_watcher_completed = -1; |
68 EXPECT_NE(nullptr, observer()); | 76 offliner_stub.GetResourcePercentageCounts( |
69 observer()->GetCountsForTypeForTesting( | 77 offline_pages::Offliner::ResourceDataType::IMAGE, |
70 content::ResourceType::RESOURCE_TYPE_IMAGE, &started, &completed); | 78 &resource_watcher_started, &resource_watcher_completed); |
71 EXPECT_EQ(2, started); | 79 EXPECT_EQ(2, resource_watcher_started); |
72 EXPECT_EQ(1, completed); | 80 EXPECT_EQ(1, resource_watcher_completed); |
73 } | 81 } |
74 | 82 |
75 } // namespace page_load_metrics | 83 } // namespace page_load_metrics |
OLD | NEW |