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

Side by Side Diff: net/quic/chromium/quic_chromium_client_session_test.cc

Issue 2521573006: Server push cancellation: change the ownership of ServerPushDelegate to HttpNetworkSession. (Closed)
Patch Set: address comments Created 4 years 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "net/quic/chromium/quic_chromium_client_session.h" 5 #include "net/quic/chromium/quic_chromium_client_session.h"
6 6
7 #include "base/base64.h" 7 #include "base/base64.h"
8 #include "base/files/file_path.h" 8 #include "base/files/file_path.h"
9 #include "base/memory/ptr_util.h" 9 #include "base/memory/ptr_util.h"
10 #include "base/rand_util.h" 10 #include "base/rand_util.h"
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 session_.reset(new QuicChromiumClientSession( 118 session_.reset(new QuicChromiumClientSession(
119 connection, std::move(socket), 119 connection, std::move(socket),
120 /*stream_factory=*/nullptr, &crypto_client_stream_factory_, &clock_, 120 /*stream_factory=*/nullptr, &crypto_client_stream_factory_, &clock_,
121 &transport_security_state_, 121 &transport_security_state_,
122 base::WrapUnique(static_cast<QuicServerInfo*>(nullptr)), 122 base::WrapUnique(static_cast<QuicServerInfo*>(nullptr)),
123 QuicServerId(kServerHostname, kServerPort, PRIVACY_MODE_DISABLED), 123 QuicServerId(kServerHostname, kServerPort, PRIVACY_MODE_DISABLED),
124 kQuicYieldAfterPacketsRead, 124 kQuicYieldAfterPacketsRead,
125 QuicTime::Delta::FromMilliseconds(kQuicYieldAfterDurationMilliseconds), 125 QuicTime::Delta::FromMilliseconds(kQuicYieldAfterDurationMilliseconds),
126 /*cert_verify_flags=*/0, DefaultQuicConfig(), &crypto_config_, 126 /*cert_verify_flags=*/0, DefaultQuicConfig(), &crypto_config_,
127 "CONNECTION_UNKNOWN", base::TimeTicks::Now(), base::TimeTicks::Now(), 127 "CONNECTION_UNKNOWN", base::TimeTicks::Now(), base::TimeTicks::Now(),
128 &push_promise_index_, base::ThreadTaskRunnerHandle::Get().get(), 128 &push_promise_index_, &test_push_delegate_,
129 base::ThreadTaskRunnerHandle::Get().get(),
129 /*socket_performance_watcher=*/nullptr, &net_log_)); 130 /*socket_performance_watcher=*/nullptr, &net_log_));
130 131
131 scoped_refptr<X509Certificate> cert( 132 scoped_refptr<X509Certificate> cert(
132 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem")); 133 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem"));
133 verify_details_.cert_verify_result.verified_cert = cert; 134 verify_details_.cert_verify_result.verified_cert = cert;
134 verify_details_.cert_verify_result.is_issued_by_known_root = true; 135 verify_details_.cert_verify_result.is_issued_by_known_root = true;
135 session_->Initialize(); 136 session_->Initialize();
136 session_->StartReading(); 137 session_->StartReading();
137 writer->set_delegate(session_.get()); 138 writer->set_delegate(session_.get());
138 } 139 }
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
318 TEST_P(QuicChromiumClientSessionTest, CancelPushWhenPendingValidation) { 319 TEST_P(QuicChromiumClientSessionTest, CancelPushWhenPendingValidation) {
319 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)}; 320 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)};
320 std::unique_ptr<QuicEncryptedPacket> client_rst(client_maker_.MakeRstPacket( 321 std::unique_ptr<QuicEncryptedPacket> client_rst(client_maker_.MakeRstPacket(
321 1, true, kClientDataStreamId1, QUIC_RST_ACKNOWLEDGEMENT)); 322 1, true, kClientDataStreamId1, QUIC_RST_ACKNOWLEDGEMENT));
322 323
323 MockWrite writes[] = { 324 MockWrite writes[] = {
324 MockWrite(ASYNC, client_rst->data(), client_rst->length(), 1)}; 325 MockWrite(ASYNC, client_rst->data(), client_rst->length(), 1)};
325 socket_data_.reset(new SequencedSocketData(reads, arraysize(reads), writes, 326 socket_data_.reset(new SequencedSocketData(reads, arraysize(reads), writes,
326 arraysize(writes))); 327 arraysize(writes)));
327 Initialize(); 328 Initialize();
328 session_->set_push_delegate(&test_push_delegate_);
329 329
330 ProofVerifyDetailsChromium details; 330 ProofVerifyDetailsChromium details;
331 details.cert_verify_result.verified_cert = 331 details.cert_verify_result.verified_cert =
332 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem"); 332 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem");
333 ASSERT_TRUE(details.cert_verify_result.verified_cert.get()); 333 ASSERT_TRUE(details.cert_verify_result.verified_cert.get());
334 334
335 CompleteCryptoHandshake(); 335 CompleteCryptoHandshake();
336 session_->OnProofVerifyDetailsAvailable(details); 336 session_->OnProofVerifyDetailsAvailable(details);
337 337
338 QuicChromiumClientStream* stream = 338 QuicChromiumClientStream* stream =
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 TEST_P(QuicChromiumClientSessionTest, CancelPushBeforeReceivingResponse) { 370 TEST_P(QuicChromiumClientSessionTest, CancelPushBeforeReceivingResponse) {
371 base::HistogramTester histogram_tester; 371 base::HistogramTester histogram_tester;
372 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)}; 372 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)};
373 std::unique_ptr<QuicEncryptedPacket> client_rst(client_maker_.MakeRstPacket( 373 std::unique_ptr<QuicEncryptedPacket> client_rst(client_maker_.MakeRstPacket(
374 1, true, kServerDataStreamId1, QUIC_STREAM_CANCELLED)); 374 1, true, kServerDataStreamId1, QUIC_STREAM_CANCELLED));
375 MockWrite writes[] = { 375 MockWrite writes[] = {
376 MockWrite(ASYNC, client_rst->data(), client_rst->length(), 1)}; 376 MockWrite(ASYNC, client_rst->data(), client_rst->length(), 1)};
377 socket_data_.reset(new SequencedSocketData(reads, arraysize(reads), writes, 377 socket_data_.reset(new SequencedSocketData(reads, arraysize(reads), writes,
378 arraysize(writes))); 378 arraysize(writes)));
379 Initialize(); 379 Initialize();
380 session_->set_push_delegate(&test_push_delegate_);
381 380
382 ProofVerifyDetailsChromium details; 381 ProofVerifyDetailsChromium details;
383 details.cert_verify_result.verified_cert = 382 details.cert_verify_result.verified_cert =
384 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem"); 383 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem");
385 ASSERT_TRUE(details.cert_verify_result.verified_cert.get()); 384 ASSERT_TRUE(details.cert_verify_result.verified_cert.get());
386 385
387 CompleteCryptoHandshake(); 386 CompleteCryptoHandshake();
388 session_->OnProofVerifyDetailsAvailable(details); 387 session_->OnProofVerifyDetailsAvailable(details);
389 388
390 QuicChromiumClientStream* stream = 389 QuicChromiumClientStream* stream =
(...skipping 27 matching lines...) Expand all
418 TEST_P(QuicChromiumClientSessionTest, CancelPushAfterReceivingResponse) { 417 TEST_P(QuicChromiumClientSessionTest, CancelPushAfterReceivingResponse) {
419 base::HistogramTester histogram_tester; 418 base::HistogramTester histogram_tester;
420 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)}; 419 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)};
421 std::unique_ptr<QuicEncryptedPacket> client_rst(client_maker_.MakeRstPacket( 420 std::unique_ptr<QuicEncryptedPacket> client_rst(client_maker_.MakeRstPacket(
422 1, true, kServerDataStreamId1, QUIC_STREAM_CANCELLED)); 421 1, true, kServerDataStreamId1, QUIC_STREAM_CANCELLED));
423 MockWrite writes[] = { 422 MockWrite writes[] = {
424 MockWrite(ASYNC, client_rst->data(), client_rst->length(), 1)}; 423 MockWrite(ASYNC, client_rst->data(), client_rst->length(), 1)};
425 socket_data_.reset(new SequencedSocketData(reads, arraysize(reads), writes, 424 socket_data_.reset(new SequencedSocketData(reads, arraysize(reads), writes,
426 arraysize(writes))); 425 arraysize(writes)));
427 Initialize(); 426 Initialize();
428 session_->set_push_delegate(&test_push_delegate_);
429 427
430 ProofVerifyDetailsChromium details; 428 ProofVerifyDetailsChromium details;
431 details.cert_verify_result.verified_cert = 429 details.cert_verify_result.verified_cert =
432 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem"); 430 ImportCertFromFile(GetTestCertsDirectory(), "spdy_pooling.pem");
433 ASSERT_TRUE(details.cert_verify_result.verified_cert.get()); 431 ASSERT_TRUE(details.cert_verify_result.verified_cert.get());
434 432
435 CompleteCryptoHandshake(); 433 CompleteCryptoHandshake();
436 session_->OnProofVerifyDetailsAvailable(details); 434 session_->OnProofVerifyDetailsAvailable(details);
437 435
438 QuicChromiumClientStream* stream = 436 QuicChromiumClientStream* stream =
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after
811 809
812 EXPECT_TRUE(socket_data_->AllReadDataConsumed()); 810 EXPECT_TRUE(socket_data_->AllReadDataConsumed());
813 EXPECT_TRUE(socket_data_->AllWriteDataConsumed()); 811 EXPECT_TRUE(socket_data_->AllWriteDataConsumed());
814 EXPECT_TRUE(new_socket_data.AllReadDataConsumed()); 812 EXPECT_TRUE(new_socket_data.AllReadDataConsumed());
815 EXPECT_TRUE(new_socket_data.AllWriteDataConsumed()); 813 EXPECT_TRUE(new_socket_data.AllWriteDataConsumed());
816 } 814 }
817 815
818 } // namespace 816 } // namespace
819 } // namespace test 817 } // namespace test
820 } // namespace net 818 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698