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

Side by Side Diff: chrome/browser/ssl/chrome_expect_ct_reporter_unittest.cc

Issue 2130493002: Implement THROTTLED priority semantics. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@NetworkStreamThrottler
Patch Set: All non-merge updates since stamps. Created 4 years, 1 month 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 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 "chrome/browser/ssl/chrome_expect_ct_reporter.h" 5 #include "chrome/browser/ssl/chrome_expect_ct_reporter.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/base64.h" 9 #include "base/base64.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after
334 std::unique_ptr<base::FeatureList> feature_list(new base::FeatureList); 334 std::unique_ptr<base::FeatureList> feature_list(new base::FeatureList);
335 feature_list->InitializeFromCommandLine(features::kExpectCTReporting.name, 335 feature_list->InitializeFromCommandLine(features::kExpectCTReporting.name,
336 ""); 336 "");
337 base::FeatureList::SetInstance(std::move(feature_list)); 337 base::FeatureList::SetInstance(std::move(feature_list));
338 } 338 }
339 339
340 } // namespace 340 } // namespace
341 341
342 // Test that no report is sent when the feature is not enabled. 342 // Test that no report is sent when the feature is not enabled.
343 TEST(ChromeExpectCTReporterTest, FeatureDisabled) { 343 TEST(ChromeExpectCTReporterTest, FeatureDisabled) {
344 content::TestBrowserThreadBundle thread_bundle;
344 base::HistogramTester histograms; 345 base::HistogramTester histograms;
345 histograms.ExpectTotalCount(kSendHistogramName, 0); 346 histograms.ExpectTotalCount(kSendHistogramName, 0);
346 347
347 TestCertificateReportSender* sender = new TestCertificateReportSender(); 348 TestCertificateReportSender* sender = new TestCertificateReportSender();
348 net::TestURLRequestContext context; 349 net::TestURLRequestContext context;
349 ChromeExpectCTReporter reporter(&context); 350 ChromeExpectCTReporter reporter(&context);
350 reporter.report_sender_.reset(sender); 351 reporter.report_sender_.reset(sender);
351 EXPECT_TRUE(sender->latest_report_uri().is_empty()); 352 EXPECT_TRUE(sender->latest_report_uri().is_empty());
352 EXPECT_TRUE(sender->latest_serialized_report().empty()); 353 EXPECT_TRUE(sender->latest_serialized_report().empty());
353 354
354 net::SSLInfo ssl_info; 355 net::SSLInfo ssl_info;
355 ssl_info.cert = 356 ssl_info.cert =
356 net::ImportCertFromFile(net::GetTestCertsDirectory(), "ok_cert.pem"); 357 net::ImportCertFromFile(net::GetTestCertsDirectory(), "ok_cert.pem");
357 ssl_info.unverified_cert = net::ImportCertFromFile( 358 ssl_info.unverified_cert = net::ImportCertFromFile(
358 net::GetTestCertsDirectory(), "localhost_cert.pem"); 359 net::GetTestCertsDirectory(), "localhost_cert.pem");
359 360
360 net::HostPortPair host_port("example.test", 443); 361 net::HostPortPair host_port("example.test", 443);
361 GURL report_uri("http://example-report.test"); 362 GURL report_uri("http://example-report.test");
362 363
363 reporter.OnExpectCTFailed(host_port, report_uri, ssl_info); 364 reporter.OnExpectCTFailed(host_port, report_uri, ssl_info);
364 EXPECT_TRUE(sender->latest_report_uri().is_empty()); 365 EXPECT_TRUE(sender->latest_report_uri().is_empty());
365 EXPECT_TRUE(sender->latest_serialized_report().empty()); 366 EXPECT_TRUE(sender->latest_serialized_report().empty());
366 367
367 histograms.ExpectTotalCount(kSendHistogramName, 0); 368 histograms.ExpectTotalCount(kSendHistogramName, 0);
368 } 369 }
369 370
370 // Test that no report is sent if the report URI is empty. 371 // Test that no report is sent if the report URI is empty.
371 TEST(ChromeExpectCTReporterTest, EmptyReportURI) { 372 TEST(ChromeExpectCTReporterTest, EmptyReportURI) {
373 content::TestBrowserThreadBundle thread_bundle;
372 base::HistogramTester histograms; 374 base::HistogramTester histograms;
373 histograms.ExpectTotalCount(kSendHistogramName, 0); 375 histograms.ExpectTotalCount(kSendHistogramName, 0);
374 376
375 EnableFeature(); 377 EnableFeature();
376 TestCertificateReportSender* sender = new TestCertificateReportSender(); 378 TestCertificateReportSender* sender = new TestCertificateReportSender();
377 net::TestURLRequestContext context; 379 net::TestURLRequestContext context;
378 ChromeExpectCTReporter reporter(&context); 380 ChromeExpectCTReporter reporter(&context);
379 reporter.report_sender_.reset(sender); 381 reporter.report_sender_.reset(sender);
380 EXPECT_TRUE(sender->latest_report_uri().is_empty()); 382 EXPECT_TRUE(sender->latest_report_uri().is_empty());
381 EXPECT_TRUE(sender->latest_serialized_report().empty()); 383 EXPECT_TRUE(sender->latest_serialized_report().empty());
(...skipping 29 matching lines...) Expand all
411 413
412 histograms.ExpectTotalCount(kFailureHistogramName, 1); 414 histograms.ExpectTotalCount(kFailureHistogramName, 1);
413 histograms.ExpectBucketCount(kFailureHistogramName, 415 histograms.ExpectBucketCount(kFailureHistogramName,
414 -net::ERR_CONNECTION_FAILED, 1); 416 -net::ERR_CONNECTION_FAILED, 1);
415 histograms.ExpectTotalCount(kSendHistogramName, 1); 417 histograms.ExpectTotalCount(kSendHistogramName, 1);
416 histograms.ExpectBucketCount(kSendHistogramName, true, 1); 418 histograms.ExpectBucketCount(kSendHistogramName, true, 1);
417 } 419 }
418 420
419 // Test that a sent report has the right format. 421 // Test that a sent report has the right format.
420 TEST(ChromeExpectCTReporterTest, SendReport) { 422 TEST(ChromeExpectCTReporterTest, SendReport) {
423 content::TestBrowserThreadBundle thread_bundle;
421 base::HistogramTester histograms; 424 base::HistogramTester histograms;
422 histograms.ExpectTotalCount(kFailureHistogramName, 0); 425 histograms.ExpectTotalCount(kFailureHistogramName, 0);
423 histograms.ExpectTotalCount(kSendHistogramName, 0); 426 histograms.ExpectTotalCount(kSendHistogramName, 0);
424 427
425 EnableFeature(); 428 EnableFeature();
426 TestCertificateReportSender* sender = new TestCertificateReportSender(); 429 TestCertificateReportSender* sender = new TestCertificateReportSender();
427 net::TestURLRequestContext context; 430 net::TestURLRequestContext context;
428 ChromeExpectCTReporter reporter(&context); 431 ChromeExpectCTReporter reporter(&context);
429 reporter.report_sender_.reset(sender); 432 reporter.report_sender_.reset(sender);
430 EXPECT_TRUE(sender->latest_report_uri().is_empty()); 433 EXPECT_TRUE(sender->latest_report_uri().is_empty());
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
484 EXPECT_EQ(report_uri, sender->latest_report_uri()); 487 EXPECT_EQ(report_uri, sender->latest_report_uri());
485 EXPECT_FALSE(sender->latest_serialized_report().empty()); 488 EXPECT_FALSE(sender->latest_serialized_report().empty());
486 EXPECT_EQ("application/json; charset=utf-8", sender->latest_content_type()); 489 EXPECT_EQ("application/json; charset=utf-8", sender->latest_content_type());
487 ASSERT_NO_FATAL_FAILURE(CheckExpectCTReport( 490 ASSERT_NO_FATAL_FAILURE(CheckExpectCTReport(
488 sender->latest_serialized_report(), host_port, ssl_info)); 491 sender->latest_serialized_report(), host_port, ssl_info));
489 492
490 histograms.ExpectTotalCount(kFailureHistogramName, 0); 493 histograms.ExpectTotalCount(kFailureHistogramName, 0);
491 histograms.ExpectTotalCount(kSendHistogramName, 1); 494 histograms.ExpectTotalCount(kSendHistogramName, 1);
492 histograms.ExpectBucketCount(kSendHistogramName, true, 1); 495 histograms.ExpectBucketCount(kSendHistogramName, true, 1);
493 } 496 }
OLDNEW
« no previous file with comments | « no previous file | content/browser/android/url_request_content_job_unittest.cc » ('j') | net/base/network_throttle_manager_impl.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698