OLD | NEW |
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 <cmath> | 5 #include <cmath> |
6 #include <memory> | 6 #include <memory> |
7 #include <utility> | 7 #include <utility> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
44 #include "net/spdy/chromium/spdy_session_pool.h" | 44 #include "net/spdy/chromium/spdy_session_pool.h" |
45 #include "net/spdy/chromium/spdy_test_util_common.h" | 45 #include "net/spdy/chromium/spdy_test_util_common.h" |
46 #include "net/spdy/core/spdy_protocol.h" | 46 #include "net/spdy/core/spdy_protocol.h" |
47 #include "net/spdy/core/spdy_test_utils.h" | 47 #include "net/spdy/core/spdy_test_utils.h" |
48 #include "net/spdy/platform/api/spdy_string.h" | 48 #include "net/spdy/platform/api/spdy_string.h" |
49 #include "net/spdy/platform/api/spdy_string_piece.h" | 49 #include "net/spdy/platform/api/spdy_string_piece.h" |
50 #include "net/ssl/ssl_connection_status_flags.h" | 50 #include "net/ssl/ssl_connection_status_flags.h" |
51 #include "net/test/cert_test_util.h" | 51 #include "net/test/cert_test_util.h" |
52 #include "net/test/gtest_util.h" | 52 #include "net/test/gtest_util.h" |
53 #include "net/test/test_data_directory.h" | 53 #include "net/test/test_data_directory.h" |
| 54 #include "net/traffic_annotation/network_traffic_annotation_test_helper.h" |
54 #include "net/url_request/url_request_test_util.h" | 55 #include "net/url_request/url_request_test_util.h" |
55 #include "testing/gmock/include/gmock/gmock.h" | 56 #include "testing/gmock/include/gmock/gmock.h" |
56 #include "testing/platform_test.h" | 57 #include "testing/platform_test.h" |
57 | 58 |
58 using net::test::IsError; | 59 using net::test::IsError; |
59 using net::test::IsOk; | 60 using net::test::IsOk; |
60 | 61 |
61 //----------------------------------------------------------------------------- | 62 //----------------------------------------------------------------------------- |
62 | 63 |
63 namespace net { | 64 namespace net { |
(...skipping 2128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2192 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2193 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
2193 | 2194 |
2194 TestDelegate delegate; | 2195 TestDelegate delegate; |
2195 SpdyURLRequestContext spdy_url_request_context; | 2196 SpdyURLRequestContext spdy_url_request_context; |
2196 TestNetworkDelegate network_delegate; | 2197 TestNetworkDelegate network_delegate; |
2197 spdy_url_request_context.set_network_delegate(&network_delegate); | 2198 spdy_url_request_context.set_network_delegate(&network_delegate); |
2198 SSLSocketDataProvider ssl_data(ASYNC, OK); | 2199 SSLSocketDataProvider ssl_data(ASYNC, OK); |
2199 ssl_data.next_proto = kProtoHTTP2; | 2200 ssl_data.next_proto = kProtoHTTP2; |
2200 | 2201 |
2201 std::unique_ptr<URLRequest> request(spdy_url_request_context.CreateRequest( | 2202 std::unique_ptr<URLRequest> request(spdy_url_request_context.CreateRequest( |
2202 GURL(kDefaultUrl), DEFAULT_PRIORITY, &delegate)); | 2203 GURL(kDefaultUrl), DEFAULT_PRIORITY, &delegate, |
| 2204 TRAFFIC_ANNOTATION_FOR_TESTS)); |
2203 spdy_url_request_context.socket_factory().AddSSLSocketDataProvider(&ssl_data); | 2205 spdy_url_request_context.socket_factory().AddSSLSocketDataProvider(&ssl_data); |
2204 spdy_url_request_context.socket_factory().AddSocketDataProvider(&data); | 2206 spdy_url_request_context.socket_factory().AddSocketDataProvider(&data); |
2205 | 2207 |
2206 request->Start(); | 2208 request->Start(); |
2207 base::RunLoop().Run(); | 2209 base::RunLoop().Run(); |
2208 | 2210 |
2209 EXPECT_LT(0, request->GetTotalSentBytes()); | 2211 EXPECT_LT(0, request->GetTotalSentBytes()); |
2210 EXPECT_LT(0, request->GetTotalReceivedBytes()); | 2212 EXPECT_LT(0, request->GetTotalReceivedBytes()); |
2211 EXPECT_EQ(network_delegate.total_network_bytes_sent(), | 2213 EXPECT_EQ(network_delegate.total_network_bytes_sent(), |
2212 request->GetTotalSentBytes()); | 2214 request->GetTotalSentBytes()); |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2267 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2269 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
2268 | 2270 |
2269 TestDelegate delegate; | 2271 TestDelegate delegate; |
2270 SpdyURLRequestContext spdy_url_request_context; | 2272 SpdyURLRequestContext spdy_url_request_context; |
2271 TestNetworkDelegate network_delegate; | 2273 TestNetworkDelegate network_delegate; |
2272 spdy_url_request_context.set_network_delegate(&network_delegate); | 2274 spdy_url_request_context.set_network_delegate(&network_delegate); |
2273 SSLSocketDataProvider ssl_data(ASYNC, OK); | 2275 SSLSocketDataProvider ssl_data(ASYNC, OK); |
2274 ssl_data.next_proto = kProtoHTTP2; | 2276 ssl_data.next_proto = kProtoHTTP2; |
2275 | 2277 |
2276 std::unique_ptr<URLRequest> request(spdy_url_request_context.CreateRequest( | 2278 std::unique_ptr<URLRequest> request(spdy_url_request_context.CreateRequest( |
2277 GURL(kDefaultUrl), DEFAULT_PRIORITY, &delegate)); | 2279 GURL(kDefaultUrl), DEFAULT_PRIORITY, &delegate, |
| 2280 TRAFFIC_ANNOTATION_FOR_TESTS)); |
2278 spdy_url_request_context.socket_factory().AddSSLSocketDataProvider(&ssl_data); | 2281 spdy_url_request_context.socket_factory().AddSSLSocketDataProvider(&ssl_data); |
2279 spdy_url_request_context.socket_factory().AddSocketDataProvider(&data); | 2282 spdy_url_request_context.socket_factory().AddSocketDataProvider(&data); |
2280 | 2283 |
2281 request->Start(); | 2284 request->Start(); |
2282 base::RunLoop().Run(); | 2285 base::RunLoop().Run(); |
2283 | 2286 |
2284 EXPECT_LT(0, request->GetTotalSentBytes()); | 2287 EXPECT_LT(0, request->GetTotalSentBytes()); |
2285 EXPECT_LT(0, request->GetTotalReceivedBytes()); | 2288 EXPECT_LT(0, request->GetTotalReceivedBytes()); |
2286 EXPECT_EQ(network_delegate.total_network_bytes_sent(), | 2289 EXPECT_EQ(network_delegate.total_network_bytes_sent(), |
2287 request->GetTotalSentBytes()); | 2290 request->GetTotalSentBytes()); |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2329 }; | 2332 }; |
2330 | 2333 |
2331 SequencedSocketData data2(reads2, arraysize(reads2), writes2, | 2334 SequencedSocketData data2(reads2, arraysize(reads2), writes2, |
2332 arraysize(writes2)); | 2335 arraysize(writes2)); |
2333 | 2336 |
2334 // TODO(erikchen): Make test support SPDYSSL, SPDYNPN | 2337 // TODO(erikchen): Make test support SPDYSSL, SPDYNPN |
2335 TestDelegate d; | 2338 TestDelegate d; |
2336 { | 2339 { |
2337 SpdyURLRequestContext spdy_url_request_context; | 2340 SpdyURLRequestContext spdy_url_request_context; |
2338 std::unique_ptr<URLRequest> r(spdy_url_request_context.CreateRequest( | 2341 std::unique_ptr<URLRequest> r(spdy_url_request_context.CreateRequest( |
2339 default_url_, DEFAULT_PRIORITY, &d)); | 2342 default_url_, DEFAULT_PRIORITY, &d, TRAFFIC_ANNOTATION_FOR_TESTS)); |
2340 spdy_url_request_context.socket_factory(). | 2343 spdy_url_request_context.socket_factory(). |
2341 AddSocketDataProvider(&data); | 2344 AddSocketDataProvider(&data); |
2342 spdy_url_request_context.socket_factory(). | 2345 spdy_url_request_context.socket_factory(). |
2343 AddSocketDataProvider(&data2); | 2346 AddSocketDataProvider(&data2); |
2344 | 2347 |
2345 d.set_quit_on_redirect(true); | 2348 d.set_quit_on_redirect(true); |
2346 r->Start(); | 2349 r->Start(); |
2347 base::RunLoop().Run(); | 2350 base::RunLoop().Run(); |
2348 | 2351 |
2349 EXPECT_EQ(1, d.received_redirect_count()); | 2352 EXPECT_EQ(1, d.received_redirect_count()); |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2406 }; | 2409 }; |
2407 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2410 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
2408 SequencedSocketData data2(reads2, arraysize(reads2), writes2, | 2411 SequencedSocketData data2(reads2, arraysize(reads2), writes2, |
2409 arraysize(writes2)); | 2412 arraysize(writes2)); |
2410 | 2413 |
2411 TestDelegate d; | 2414 TestDelegate d; |
2412 TestDelegate d2; | 2415 TestDelegate d2; |
2413 SpdyURLRequestContext spdy_url_request_context; | 2416 SpdyURLRequestContext spdy_url_request_context; |
2414 { | 2417 { |
2415 std::unique_ptr<URLRequest> r(spdy_url_request_context.CreateRequest( | 2418 std::unique_ptr<URLRequest> r(spdy_url_request_context.CreateRequest( |
2416 default_url_, DEFAULT_PRIORITY, &d)); | 2419 default_url_, DEFAULT_PRIORITY, &d, TRAFFIC_ANNOTATION_FOR_TESTS)); |
2417 spdy_url_request_context.socket_factory(). | 2420 spdy_url_request_context.socket_factory(). |
2418 AddSocketDataProvider(&data); | 2421 AddSocketDataProvider(&data); |
2419 | 2422 |
2420 r->Start(); | 2423 r->Start(); |
2421 base::RunLoop().Run(); | 2424 base::RunLoop().Run(); |
2422 | 2425 |
2423 EXPECT_EQ(0, d.received_redirect_count()); | 2426 EXPECT_EQ(0, d.received_redirect_count()); |
2424 SpdyString contents("hello!"); | 2427 SpdyString contents("hello!"); |
2425 EXPECT_EQ(contents, d.data_received()); | 2428 EXPECT_EQ(contents, d.data_received()); |
2426 | 2429 |
2427 std::unique_ptr<URLRequest> r2(spdy_url_request_context.CreateRequest( | 2430 std::unique_ptr<URLRequest> r2(spdy_url_request_context.CreateRequest( |
2428 GURL(GetDefaultUrlWithPath("/foo.dat")), DEFAULT_PRIORITY, &d2)); | 2431 GURL(GetDefaultUrlWithPath("/foo.dat")), DEFAULT_PRIORITY, &d2, |
| 2432 TRAFFIC_ANNOTATION_FOR_TESTS)); |
2429 spdy_url_request_context.socket_factory(). | 2433 spdy_url_request_context.socket_factory(). |
2430 AddSocketDataProvider(&data2); | 2434 AddSocketDataProvider(&data2); |
2431 | 2435 |
2432 d2.set_quit_on_redirect(true); | 2436 d2.set_quit_on_redirect(true); |
2433 r2->Start(); | 2437 r2->Start(); |
2434 base::RunLoop().Run(); | 2438 base::RunLoop().Run(); |
2435 EXPECT_EQ(1, d2.received_redirect_count()); | 2439 EXPECT_EQ(1, d2.received_redirect_count()); |
2436 | 2440 |
2437 r2->FollowDeferredRedirect(); | 2441 r2->FollowDeferredRedirect(); |
2438 base::RunLoop().Run(); | 2442 base::RunLoop().Run(); |
(...skipping 4195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6634 TEST_F(SpdyNetworkTransactionTLSUsageCheckTest, TLSCipherSuiteSucky) { | 6638 TEST_F(SpdyNetworkTransactionTLSUsageCheckTest, TLSCipherSuiteSucky) { |
6635 std::unique_ptr<SSLSocketDataProvider> ssl_provider( | 6639 std::unique_ptr<SSLSocketDataProvider> ssl_provider( |
6636 new SSLSocketDataProvider(ASYNC, OK)); | 6640 new SSLSocketDataProvider(ASYNC, OK)); |
6637 // Set to TLS_RSA_WITH_NULL_MD5 | 6641 // Set to TLS_RSA_WITH_NULL_MD5 |
6638 SSLConnectionStatusSetCipherSuite(0x1, &ssl_provider->connection_status); | 6642 SSLConnectionStatusSetCipherSuite(0x1, &ssl_provider->connection_status); |
6639 | 6643 |
6640 RunTLSUsageCheckTest(std::move(ssl_provider)); | 6644 RunTLSUsageCheckTest(std::move(ssl_provider)); |
6641 } | 6645 } |
6642 | 6646 |
6643 } // namespace net | 6647 } // namespace net |
OLD | NEW |