OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "components/data_use_measurement/core/data_use_network_delegate.h" | 5 #include "components/data_use_measurement/core/data_use_network_delegate.h" |
6 | 6 |
7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
10 #include "base/test/histogram_tester.h" | 10 #include "base/test/histogram_tester.h" |
(...skipping 14 matching lines...) Expand all Loading... |
25 class TestURLRequestClassifier : public base::SupportsUserData::Data, | 25 class TestURLRequestClassifier : public base::SupportsUserData::Data, |
26 public URLRequestClassifier { | 26 public URLRequestClassifier { |
27 public: | 27 public: |
28 static const void* const kUserDataKey; | 28 static const void* const kUserDataKey; |
29 | 29 |
30 bool IsUserRequest(const net::URLRequest& request) const override { | 30 bool IsUserRequest(const net::URLRequest& request) const override { |
31 return request.GetUserData(kUserDataKey) != nullptr; | 31 return request.GetUserData(kUserDataKey) != nullptr; |
32 } | 32 } |
33 | 33 |
34 static void MarkAsUserRequest(net::URLRequest* request) { | 34 static void MarkAsUserRequest(net::URLRequest* request) { |
35 request->SetUserData(kUserDataKey, new TestURLRequestClassifier()); | 35 request->SetUserData(kUserDataKey, |
| 36 base::MakeUnique<TestURLRequestClassifier>()); |
36 } | 37 } |
37 | 38 |
38 DataUseUserData::DataUseContentType GetContentType( | 39 DataUseUserData::DataUseContentType GetContentType( |
39 const net::URLRequest& request, | 40 const net::URLRequest& request, |
40 const net::HttpResponseHeaders& response_headers) const override { | 41 const net::HttpResponseHeaders& response_headers) const override { |
41 return DataUseUserData::OTHER; | 42 return DataUseUserData::OTHER; |
42 } | 43 } |
43 | 44 |
44 void RecordPageTransitionUMA(uint64_t page_transition, | 45 void RecordPageTransitionUMA(uint64_t page_transition, |
45 int64_t received_bytes) const override {} | 46 int64_t received_bytes) const override {} |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
104 test_delegate.set_quit_on_complete(true); | 105 test_delegate.set_quit_on_complete(true); |
105 std::unique_ptr<net::URLRequest> request( | 106 std::unique_ptr<net::URLRequest> request( |
106 context->CreateRequest(GURL("http://example.com"), net::DEFAULT_PRIORITY, | 107 context->CreateRequest(GURL("http://example.com"), net::DEFAULT_PRIORITY, |
107 &test_delegate, TRAFFIC_ANNOTATION_FOR_TESTS)); | 108 &test_delegate, TRAFFIC_ANNOTATION_FOR_TESTS)); |
108 | 109 |
109 if (from_user) { | 110 if (from_user) { |
110 TestURLRequestClassifier::MarkAsUserRequest(request.get()); | 111 TestURLRequestClassifier::MarkAsUserRequest(request.get()); |
111 } else { | 112 } else { |
112 request->SetUserData( | 113 request->SetUserData( |
113 data_use_measurement::DataUseUserData::kUserDataKey, | 114 data_use_measurement::DataUseUserData::kUserDataKey, |
114 new data_use_measurement::DataUseUserData( | 115 base::MakeUnique<data_use_measurement::DataUseUserData>( |
115 data_use_measurement::DataUseUserData::SUGGESTIONS, | 116 data_use_measurement::DataUseUserData::SUGGESTIONS, |
116 data_use_measurement::DataUseUserData::FOREGROUND)); | 117 data_use_measurement::DataUseUserData::FOREGROUND)); |
117 } | 118 } |
118 request->Start(); | 119 request->Start(); |
119 base::RunLoop().RunUntilIdle(); | 120 base::RunLoop().RunUntilIdle(); |
120 return request; | 121 return request; |
121 } | 122 } |
122 | 123 |
123 class DataUseNetworkDelegateTest : public testing::Test { | 124 class DataUseNetworkDelegateTest : public testing::Test { |
124 public: | 125 public: |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
242 histogram_tester.ExpectTotalCount( | 243 histogram_tester.ExpectTotalCount( |
243 "DataUse.TrafficSize.System.Downstream.Foreground.NotCellular", 0); | 244 "DataUse.TrafficSize.System.Downstream.Foreground.NotCellular", 0); |
244 histogram_tester.ExpectTotalCount( | 245 histogram_tester.ExpectTotalCount( |
245 "DataUse.TrafficSize.System.Upstream.Foreground.NotCellular", 0); | 246 "DataUse.TrafficSize.System.Upstream.Foreground.NotCellular", 0); |
246 histogram_tester.ExpectTotalCount("DataUse.MessageSize.Suggestions", 0); | 247 histogram_tester.ExpectTotalCount("DataUse.MessageSize.Suggestions", 0); |
247 } | 248 } |
248 | 249 |
249 } // namespace | 250 } // namespace |
250 | 251 |
251 } // namespace data_use_measurement | 252 } // namespace data_use_measurement |
OLD | NEW |