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/subresource_filter_metrics_
observer.h" | 5 #include "chrome/browser/page_load_metrics/observers/subresource_filter_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 | 9 |
10 namespace { | 10 namespace { |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
146 .InMilliseconds(), | 146 .InMilliseconds(), |
147 1); | 147 1); |
148 | 148 |
149 histogram_tester().ExpectTotalCount( | 149 histogram_tester().ExpectTotalCount( |
150 internal::kHistogramSubresourceFilterForegroundDuration, 1); | 150 internal::kHistogramSubresourceFilterForegroundDuration, 1); |
151 } | 151 } |
152 | 152 |
153 TEST_F(SubresourceFilterMetricsObserverTest, Subresources) { | 153 TEST_F(SubresourceFilterMetricsObserverTest, Subresources) { |
154 NavigateAndCommit(GURL(kDefaultTestUrl)); | 154 NavigateAndCommit(GURL(kDefaultTestUrl)); |
155 | 155 |
156 SimulateLoadedResource({false /* was_cached */, | 156 SimulateLoadedResource( |
157 1024 * 40 /* raw_body_bytes */, | 157 {GURL(), -1 /* frame_tree_node_id */, false /* was_cached */, |
158 0 /* original_network_content_length */, | 158 1024 * 40 /* raw_body_bytes */, 0 /* original_network_content_length */, |
159 nullptr /* data_reduction_proxy_data */, | 159 nullptr /* data_reduction_proxy_data */, |
160 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); | 160 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); |
161 | 161 |
162 page_load_metrics::PageLoadTiming timing; | 162 page_load_metrics::PageLoadTiming timing; |
163 timing.navigation_start = base::Time::FromDoubleT(1); | 163 timing.navigation_start = base::Time::FromDoubleT(1); |
164 page_load_metrics::PageLoadMetadata metadata; | 164 page_load_metrics::PageLoadMetadata metadata; |
165 metadata.behavior_flags |= | 165 metadata.behavior_flags |= |
166 blink::WebLoadingBehaviorFlag::kWebLoadingBehaviorSubresourceFilterMatch; | 166 blink::WebLoadingBehaviorFlag::kWebLoadingBehaviorSubresourceFilterMatch; |
167 SimulateTimingAndMetadataUpdate(timing, metadata); | 167 SimulateTimingAndMetadataUpdate(timing, metadata); |
168 | 168 |
169 SimulateLoadedResource({false /* was_cached */, | 169 SimulateLoadedResource( |
170 1024 * 20 /* raw_body_bytes */, | 170 {GURL(), -1 /* frame_tree_node_id */, false /* was_cached */, |
| 171 1024 * 20 /* raw_body_bytes */, 0 /* original_network_content_length */, |
| 172 nullptr /* data_reduction_proxy_data */, |
| 173 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); |
| 174 |
| 175 SimulateLoadedResource({GURL(), -1 /* frame_tree_node_id */, |
| 176 true /* was_cached */, 1024 * 10 /* raw_body_bytes */, |
171 0 /* original_network_content_length */, | 177 0 /* original_network_content_length */, |
172 nullptr /* data_reduction_proxy_data */, | 178 nullptr /* data_reduction_proxy_data */, |
173 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); | 179 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); |
174 | |
175 SimulateLoadedResource({true /* was_cached */, 1024 * 10 /* raw_body_bytes */, | |
176 0 /* original_network_content_length */, | |
177 nullptr /* data_reduction_proxy_data */, | |
178 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); | |
179 | 180 |
180 histogram_tester().ExpectTotalCount( | 181 histogram_tester().ExpectTotalCount( |
181 internal::kHistogramSubresourceFilterCount, 1); | 182 internal::kHistogramSubresourceFilterCount, 1); |
182 | 183 |
183 // Navigate away from the current page to force logging of request and byte | 184 // Navigate away from the current page to force logging of request and byte |
184 // metrics. | 185 // metrics. |
185 NavigateToUntrackedUrl(); | 186 NavigateToUntrackedUrl(); |
186 | 187 |
187 histogram_tester().ExpectTotalCount( | 188 histogram_tester().ExpectTotalCount( |
188 internal::kHistogramSubresourceFilterTotalResources, 1); | 189 internal::kHistogramSubresourceFilterTotalResources, 1); |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
244 internal::kHistogramSubresourceFilterNoMediaCacheBytes, 1); | 245 internal::kHistogramSubresourceFilterNoMediaCacheBytes, 1); |
245 histogram_tester().ExpectBucketCount( | 246 histogram_tester().ExpectBucketCount( |
246 internal::kHistogramSubresourceFilterNoMediaCacheBytes, 10, 1); | 247 internal::kHistogramSubresourceFilterNoMediaCacheBytes, 10, 1); |
247 } | 248 } |
248 | 249 |
249 TEST_F(SubresourceFilterMetricsObserverTest, SubresourcesWithMedia) { | 250 TEST_F(SubresourceFilterMetricsObserverTest, SubresourcesWithMedia) { |
250 NavigateAndCommit(GURL(kDefaultTestUrl)); | 251 NavigateAndCommit(GURL(kDefaultTestUrl)); |
251 | 252 |
252 SimulateMediaPlayed(); | 253 SimulateMediaPlayed(); |
253 | 254 |
254 SimulateLoadedResource({false /* was_cached */, | 255 SimulateLoadedResource( |
255 1024 * 40 /* raw_body_bytes */, | 256 {GURL(), -1 /* frame_tree_node_id */, false /* was_cached */, |
256 0 /* original_network_content_length */, | 257 1024 * 40 /* raw_body_bytes */, 0 /* original_network_content_length */, |
257 nullptr /* data_reduction_proxy_data */, | 258 nullptr /* data_reduction_proxy_data */, |
258 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); | 259 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); |
259 | 260 |
260 page_load_metrics::PageLoadTiming timing; | 261 page_load_metrics::PageLoadTiming timing; |
261 timing.navigation_start = base::Time::FromDoubleT(1); | 262 timing.navigation_start = base::Time::FromDoubleT(1); |
262 page_load_metrics::PageLoadMetadata metadata; | 263 page_load_metrics::PageLoadMetadata metadata; |
263 metadata.behavior_flags |= | 264 metadata.behavior_flags |= |
264 blink::WebLoadingBehaviorFlag::kWebLoadingBehaviorSubresourceFilterMatch; | 265 blink::WebLoadingBehaviorFlag::kWebLoadingBehaviorSubresourceFilterMatch; |
265 SimulateTimingAndMetadataUpdate(timing, metadata); | 266 SimulateTimingAndMetadataUpdate(timing, metadata); |
266 | 267 |
267 SimulateLoadedResource({false /* was_cached */, | 268 SimulateLoadedResource( |
268 1024 * 20 /* raw_body_bytes */, | 269 {GURL(), -1 /* frame_tree_node_id */, false /* was_cached */, |
| 270 1024 * 20 /* raw_body_bytes */, 0 /* original_network_content_length */, |
| 271 nullptr /* data_reduction_proxy_data */, |
| 272 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); |
| 273 |
| 274 SimulateLoadedResource({GURL(), -1 /* frame_tree_node_id */, |
| 275 true /* was_cached */, 1024 * 10 /* raw_body_bytes */, |
269 0 /* original_network_content_length */, | 276 0 /* original_network_content_length */, |
270 nullptr /* data_reduction_proxy_data */, | 277 nullptr /* data_reduction_proxy_data */, |
271 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); | 278 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); |
272 | |
273 SimulateLoadedResource({true /* was_cached */, 1024 * 10 /* raw_body_bytes */, | |
274 0 /* original_network_content_length */, | |
275 nullptr /* data_reduction_proxy_data */, | |
276 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME}); | |
277 | 279 |
278 histogram_tester().ExpectTotalCount( | 280 histogram_tester().ExpectTotalCount( |
279 internal::kHistogramSubresourceFilterCount, 1); | 281 internal::kHistogramSubresourceFilterCount, 1); |
280 | 282 |
281 // Navigate away from the current page to force logging of request and byte | 283 // Navigate away from the current page to force logging of request and byte |
282 // metrics. | 284 // metrics. |
283 NavigateToUntrackedUrl(); | 285 NavigateToUntrackedUrl(); |
284 | 286 |
285 histogram_tester().ExpectTotalCount( | 287 histogram_tester().ExpectTotalCount( |
286 internal::kHistogramSubresourceFilterTotalResources, 1); | 288 internal::kHistogramSubresourceFilterTotalResources, 1); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
336 histogram_tester().ExpectTotalCount( | 338 histogram_tester().ExpectTotalCount( |
337 internal::kHistogramSubresourceFilterMediaNetworkBytes, 1); | 339 internal::kHistogramSubresourceFilterMediaNetworkBytes, 1); |
338 histogram_tester().ExpectBucketCount( | 340 histogram_tester().ExpectBucketCount( |
339 internal::kHistogramSubresourceFilterMediaNetworkBytes, 60, 1); | 341 internal::kHistogramSubresourceFilterMediaNetworkBytes, 60, 1); |
340 | 342 |
341 histogram_tester().ExpectTotalCount( | 343 histogram_tester().ExpectTotalCount( |
342 internal::kHistogramSubresourceFilterMediaCacheBytes, 1); | 344 internal::kHistogramSubresourceFilterMediaCacheBytes, 1); |
343 histogram_tester().ExpectBucketCount( | 345 histogram_tester().ExpectBucketCount( |
344 internal::kHistogramSubresourceFilterMediaCacheBytes, 10, 1); | 346 internal::kHistogramSubresourceFilterMediaCacheBytes, 10, 1); |
345 } | 347 } |
OLD | NEW |