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

Unified Diff: components/data_use_measurement/core/data_use_measurement_unittest.cc

Issue 2851923002: Fix overflow in user traffic content type histogram (Closed)
Patch Set: change array to int16 and added test Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: components/data_use_measurement/core/data_use_measurement_unittest.cc
diff --git a/components/data_use_measurement/core/data_use_measurement_unittest.cc b/components/data_use_measurement/core/data_use_measurement_unittest.cc
index 87ce637a5e4f0399a0f0c054c81bdf1005455106..09a2061119a3d0d0de436d17f2f7abddac03beea 100644
--- a/components/data_use_measurement/core/data_use_measurement_unittest.cc
+++ b/components/data_use_measurement/core/data_use_measurement_unittest.cc
@@ -446,9 +446,9 @@ TEST_F(DataUseMeasurementTest, ContentType) {
base::HistogramTester histogram_tester;
std::unique_ptr<net::URLRequest> request = CreateTestRequest(kUserRequest);
data_use_measurement_.OnBeforeURLRequest(request.get());
- data_use_measurement_.OnNetworkBytesReceived(*request, 1000);
- histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTraffic",
- DataUseUserData::OTHER, 1000);
+ data_use_measurement_.OnNetworkBytesReceived(*request, 10 * 1024);
+ histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTrafficKB",
+ DataUseUserData::OTHER, 10);
}
{
@@ -470,10 +470,10 @@ TEST_F(DataUseMeasurementTest, ContentType) {
url_request_classifier_->set_content_type(DataUseUserData::VIDEO);
data_use_measurement_.OnBeforeURLRequest(request.get());
data_use_measurement_.OnHeadersReceived(request.get(), nullptr);
- data_use_measurement_.OnNetworkBytesReceived(*request, 1000);
+ data_use_measurement_.OnNetworkBytesReceived(*request, 10 * 1024);
- histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTraffic",
- DataUseUserData::VIDEO, 1000);
+ histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTrafficKB",
+ DataUseUserData::VIDEO, 10);
}
// Audio request from background tab.
@@ -484,11 +484,11 @@ TEST_F(DataUseMeasurementTest, ContentType) {
url_request_classifier_->set_content_type(DataUseUserData::AUDIO);
data_use_measurement_.OnBeforeURLRequest(request.get());
data_use_measurement_.OnHeadersReceived(request.get(), nullptr);
- data_use_measurement_.OnNetworkBytesReceived(*request, 1000);
+ data_use_measurement_.OnNetworkBytesReceived(*request, 10 * 1024);
- histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTraffic",
+ histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTrafficKB",
DataUseUserData::AUDIO_TABBACKGROUND,
- 1000);
+ 10);
}
// Video request from background app.
@@ -501,14 +501,35 @@ TEST_F(DataUseMeasurementTest, ContentType) {
ascriber_.SetTabVisibility(false);
data_use_measurement_.OnBeforeURLRequest(request.get());
data_use_measurement_.OnHeadersReceived(request.get(), nullptr);
- data_use_measurement_.OnNetworkBytesReceived(*request, 1000);
+ data_use_measurement_.OnNetworkBytesReceived(*request, 10 * 1024);
- histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTraffic",
+ histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTrafficKB",
DataUseUserData::VIDEO_APPBACKGROUND,
- 1000);
+ 10);
}
}
+TEST_F(DataUseMeasurementTest, ContentTypeInKB) {
+ base::HistogramTester histogram_tester;
+ std::unique_ptr<net::URLRequest> request = CreateTestRequest(kUserRequest);
+ url_request_classifier_->set_content_type(DataUseUserData::VIDEO);
+ data_use_measurement()->OnApplicationStateChangeForTesting(
+ base::android::APPLICATION_STATE_HAS_STOPPED_ACTIVITIES);
+ ascriber_.SetTabVisibility(false);
+ data_use_measurement_.OnBeforeURLRequest(request.get());
+ data_use_measurement_.OnHeadersReceived(request.get(), nullptr);
+ data_use_measurement_.OnNetworkBytesReceived(*request, 600);
+
+ // UserTrafficKB metric is not recorded for the first 600 bytes of data use.
+ histogram_tester.ExpectTotalCount("DataUse.ContentType.UserTrafficKB", 0);
+
+ data_use_measurement_.OnNetworkBytesReceived(*request, 600);
+
+ // UserTrafficKB recorded for 1KB.
+ histogram_tester.ExpectUniqueSample("DataUse.ContentType.UserTrafficKB",
+ DataUseUserData::VIDEO_APPBACKGROUND, 1);
+}
+
#endif
} // namespace data_use_measurement

Powered by Google App Engine
This is Rietveld 408576698