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

Side by Side Diff: net/http/http_network_transaction_unittest.cc

Issue 2431193004: [Merge-M54] [net] clang-format HttpNetworkTransactionTest.GenerateAuthToken test. (Closed)
Patch Set: Created 4 years, 2 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/http/http_network_transaction.h" 5 #include "net/http/http_network_transaction.h"
6 6
7 #include <math.h> // ceil 7 #include <math.h> // ceil
8 #include <stdarg.h> 8 #include <stdarg.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 11215 matching lines...) Expand 10 before | Expand all | Expand 10 after
11226 // need to test all permutations of the backend server). 11226 // need to test all permutations of the backend server).
11227 // 11227 //
11228 // The test proceeds by going over each of the configuration cases, and 11228 // The test proceeds by going over each of the configuration cases, and
11229 // potentially running up to three rounds in each of the tests. The TestConfig 11229 // potentially running up to three rounds in each of the tests. The TestConfig
11230 // specifies both the configuration for the test as well as the expectations 11230 // specifies both the configuration for the test as well as the expectations
11231 // for the results. 11231 // for the results.
11232 TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) { 11232 TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
11233 static const char kServer[] = "http://www.example.com"; 11233 static const char kServer[] = "http://www.example.com";
11234 static const char kSecureServer[] = "https://www.example.com"; 11234 static const char kSecureServer[] = "https://www.example.com";
11235 static const char kProxy[] = "myproxy:70"; 11235 static const char kProxy[] = "myproxy:70";
11236 const int kAuthErr = ERR_INVALID_AUTH_CREDENTIALS;
11237 11236
11238 enum AuthTiming { 11237 enum AuthTiming {
11239 AUTH_NONE, 11238 AUTH_NONE,
11240 AUTH_SYNC, 11239 AUTH_SYNC,
11241 AUTH_ASYNC, 11240 AUTH_ASYNC,
11242 }; 11241 };
11243 11242
11244 const MockWrite kGet( 11243 const MockWrite kGet(
11245 "GET / HTTP/1.1\r\n" 11244 "GET / HTTP/1.1\r\n"
11246 "Host: www.example.com\r\n" 11245 "Host: www.example.com\r\n"
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
11343 const char* const proxy_url; 11342 const char* const proxy_url;
11344 AuthTiming proxy_auth_timing; 11343 AuthTiming proxy_auth_timing;
11345 int proxy_auth_rv; 11344 int proxy_auth_rv;
11346 const char* const server_url; 11345 const char* const server_url;
11347 AuthTiming server_auth_timing; 11346 AuthTiming server_auth_timing;
11348 int server_auth_rv; 11347 int server_auth_rv;
11349 int num_auth_rounds; 11348 int num_auth_rounds;
11350 int first_ssl_round; 11349 int first_ssl_round;
11351 TestRound rounds[3]; 11350 TestRound rounds[3];
11352 } test_configs[] = { 11351 } test_configs[] = {
11353 // Non-authenticating HTTP server with a direct connection. 11352 // Non-authenticating HTTP server with a direct connection.
11354 { NULL, AUTH_NONE, OK, kServer, AUTH_NONE, OK, 1, kNoSSL, 11353 {NULL,
11355 { TestRound(kGet, kSuccess, OK)}}, 11354 AUTH_NONE,
11356 // Authenticating HTTP server with a direct connection. 11355 OK,
11357 { NULL, AUTH_NONE, OK, kServer, AUTH_SYNC, OK, 2, kNoSSL, 11356 kServer,
11358 { TestRound(kGet, kServerChallenge, OK), 11357 AUTH_NONE,
11359 TestRound(kGetAuth, kSuccess, OK)}}, 11358 OK,
11360 { NULL, AUTH_NONE, OK, kServer, AUTH_SYNC, kAuthErr, 2, kNoSSL, 11359 1,
11361 { TestRound(kGet, kServerChallenge, OK), 11360 kNoSSL,
11362 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11361 {TestRound(kGet, kSuccess, OK)}},
11363 { NULL, AUTH_NONE, OK, kServer, AUTH_ASYNC, OK, 2, kNoSSL, 11362 // Authenticating HTTP server with a direct connection.
11364 { TestRound(kGet, kServerChallenge, OK), 11363 {NULL,
11365 TestRound(kGetAuth, kSuccess, OK)}}, 11364 AUTH_NONE,
11366 { NULL, AUTH_NONE, OK, kServer, AUTH_ASYNC, kAuthErr, 2, kNoSSL, 11365 OK,
11367 { TestRound(kGet, kServerChallenge, OK), 11366 kServer,
11368 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11367 AUTH_SYNC,
11369 // Non-authenticating HTTP server through a non-authenticating proxy. 11368 OK,
11370 { kProxy, AUTH_NONE, OK, kServer, AUTH_NONE, OK, 1, kNoSSL, 11369 2,
11371 { TestRound(kGetProxy, kSuccess, OK)}}, 11370 kNoSSL,
11372 // Authenticating HTTP server through a non-authenticating proxy. 11371 {TestRound(kGet, kServerChallenge, OK),
11373 { kProxy, AUTH_NONE, OK, kServer, AUTH_SYNC, OK, 2, kNoSSL, 11372 TestRound(kGetAuth, kSuccess, OK)}},
11374 { TestRound(kGetProxy, kServerChallenge, OK), 11373 {NULL,
11374 AUTH_NONE,
11375 OK,
11376 kServer,
11377 AUTH_SYNC,
11378 ERR_INVALID_AUTH_CREDENTIALS,
11379 2,
11380 kNoSSL,
11381 {TestRound(kGet, kServerChallenge, OK),
11382 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11383 {NULL,
11384 AUTH_NONE,
11385 OK,
11386 kServer,
11387 AUTH_ASYNC,
11388 OK,
11389 2,
11390 kNoSSL,
11391 {TestRound(kGet, kServerChallenge, OK),
11392 TestRound(kGetAuth, kSuccess, OK)}},
11393 {NULL,
11394 AUTH_NONE,
11395 OK,
11396 kServer,
11397 AUTH_ASYNC,
11398 ERR_INVALID_AUTH_CREDENTIALS,
11399 2,
11400 kNoSSL,
11401 {TestRound(kGet, kServerChallenge, OK),
11402 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11403 // Non-authenticating HTTP server through a non-authenticating proxy.
11404 {kProxy,
11405 AUTH_NONE,
11406 OK,
11407 kServer,
11408 AUTH_NONE,
11409 OK,
11410 1,
11411 kNoSSL,
11412 {TestRound(kGetProxy, kSuccess, OK)}},
11413 // Authenticating HTTP server through a non-authenticating proxy.
11414 {kProxy,
11415 AUTH_NONE,
11416 OK,
11417 kServer,
11418 AUTH_SYNC,
11419 OK,
11420 2,
11421 kNoSSL,
11422 {TestRound(kGetProxy, kServerChallenge, OK),
11375 TestRound(kGetAuthThroughProxy, kSuccess, OK)}}, 11423 TestRound(kGetAuthThroughProxy, kSuccess, OK)}},
11376 { kProxy, AUTH_NONE, OK, kServer, AUTH_SYNC, kAuthErr, 2, kNoSSL, 11424 {kProxy,
11377 { TestRound(kGetProxy, kServerChallenge, OK), 11425 AUTH_NONE,
11378 TestRound(kGetAuthThroughProxy, kFailure, kAuthErr)}}, 11426 OK,
11379 { kProxy, AUTH_NONE, OK, kServer, AUTH_ASYNC, OK, 2, kNoSSL, 11427 kServer,
11380 { TestRound(kGetProxy, kServerChallenge, OK), 11428 AUTH_SYNC,
11429 ERR_INVALID_AUTH_CREDENTIALS,
11430 2,
11431 kNoSSL,
11432 {TestRound(kGetProxy, kServerChallenge, OK),
11433 TestRound(kGetAuthThroughProxy, kFailure,
11434 ERR_INVALID_AUTH_CREDENTIALS)}},
11435 {kProxy,
11436 AUTH_NONE,
11437 OK,
11438 kServer,
11439 AUTH_ASYNC,
11440 OK,
11441 2,
11442 kNoSSL,
11443 {TestRound(kGetProxy, kServerChallenge, OK),
11381 TestRound(kGetAuthThroughProxy, kSuccess, OK)}}, 11444 TestRound(kGetAuthThroughProxy, kSuccess, OK)}},
11382 { kProxy, AUTH_NONE, OK, kServer, AUTH_ASYNC, kAuthErr, 2, kNoSSL, 11445 {kProxy,
11383 { TestRound(kGetProxy, kServerChallenge, OK), 11446 AUTH_NONE,
11384 TestRound(kGetAuthThroughProxy, kFailure, kAuthErr)}}, 11447 OK,
11385 // Non-authenticating HTTP server through an authenticating proxy. 11448 kServer,
11386 { kProxy, AUTH_SYNC, OK, kServer, AUTH_NONE, OK, 2, kNoSSL, 11449 AUTH_ASYNC,
11387 { TestRound(kGetProxy, kProxyChallenge, OK), 11450 ERR_INVALID_AUTH_CREDENTIALS,
11451 2,
11452 kNoSSL,
11453 {TestRound(kGetProxy, kServerChallenge, OK),
11454 TestRound(kGetAuthThroughProxy, kFailure,
11455 ERR_INVALID_AUTH_CREDENTIALS)}},
11456 // Non-authenticating HTTP server through an authenticating proxy.
11457 {kProxy,
11458 AUTH_SYNC,
11459 OK,
11460 kServer,
11461 AUTH_NONE,
11462 OK,
11463 2,
11464 kNoSSL,
11465 {TestRound(kGetProxy, kProxyChallenge, OK),
11388 TestRound(kGetProxyAuth, kSuccess, OK)}}, 11466 TestRound(kGetProxyAuth, kSuccess, OK)}},
11389 { kProxy, AUTH_SYNC, kAuthErr, kServer, AUTH_NONE, OK, 2, kNoSSL, 11467 {kProxy,
11390 { TestRound(kGetProxy, kProxyChallenge, OK), 11468 AUTH_SYNC,
11391 TestRound(kGetProxyAuth, kFailure, kAuthErr)}}, 11469 ERR_INVALID_AUTH_CREDENTIALS,
11392 { kProxy, AUTH_ASYNC, OK, kServer, AUTH_NONE, OK, 2, kNoSSL, 11470 kServer,
11393 { TestRound(kGetProxy, kProxyChallenge, OK), 11471 AUTH_NONE,
11472 OK,
11473 2,
11474 kNoSSL,
11475 {TestRound(kGetProxy, kProxyChallenge, OK),
11476 TestRound(kGetProxyAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11477 {kProxy,
11478 AUTH_ASYNC,
11479 OK,
11480 kServer,
11481 AUTH_NONE,
11482 OK,
11483 2,
11484 kNoSSL,
11485 {TestRound(kGetProxy, kProxyChallenge, OK),
11394 TestRound(kGetProxyAuth, kSuccess, OK)}}, 11486 TestRound(kGetProxyAuth, kSuccess, OK)}},
11395 { kProxy, AUTH_ASYNC, kAuthErr, kServer, AUTH_NONE, OK, 2, kNoSSL, 11487 {kProxy,
11396 { TestRound(kGetProxy, kProxyChallenge, OK), 11488 AUTH_ASYNC,
11397 TestRound(kGetProxyAuth, kFailure, kAuthErr)}}, 11489 ERR_INVALID_AUTH_CREDENTIALS,
11398 // Authenticating HTTP server through an authenticating proxy. 11490 kServer,
11399 { kProxy, AUTH_SYNC, OK, kServer, AUTH_SYNC, OK, 3, kNoSSL, 11491 AUTH_NONE,
11400 { TestRound(kGetProxy, kProxyChallenge, OK), 11492 OK,
11493 2,
11494 kNoSSL,
11495 {TestRound(kGetProxy, kProxyChallenge, OK),
11496 TestRound(kGetProxyAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11497 // Authenticating HTTP server through an authenticating proxy.
11498 {kProxy,
11499 AUTH_SYNC,
11500 OK,
11501 kServer,
11502 AUTH_SYNC,
11503 OK,
11504 3,
11505 kNoSSL,
11506 {TestRound(kGetProxy, kProxyChallenge, OK),
11401 TestRound(kGetProxyAuth, kServerChallenge, OK), 11507 TestRound(kGetProxyAuth, kServerChallenge, OK),
11402 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}}, 11508 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
11403 { kProxy, AUTH_SYNC, OK, kServer, AUTH_SYNC, kAuthErr, 3, kNoSSL, 11509 {kProxy,
11404 { TestRound(kGetProxy, kProxyChallenge, OK), 11510 AUTH_SYNC,
11405 TestRound(kGetProxyAuth, kServerChallenge, OK), 11511 OK,
11406 TestRound(kGetAuthWithProxyAuth, kFailure, kAuthErr)}}, 11512 kServer,
11407 { kProxy, AUTH_ASYNC, OK, kServer, AUTH_SYNC, OK, 3, kNoSSL, 11513 AUTH_SYNC,
11408 { TestRound(kGetProxy, kProxyChallenge, OK), 11514 ERR_INVALID_AUTH_CREDENTIALS,
11515 3,
11516 kNoSSL,
11517 {TestRound(kGetProxy, kProxyChallenge, OK),
11518 TestRound(kGetProxyAuth, kServerChallenge, OK),
11519 TestRound(kGetAuthWithProxyAuth, kFailure,
11520 ERR_INVALID_AUTH_CREDENTIALS)}},
11521 {kProxy,
11522 AUTH_ASYNC,
11523 OK,
11524 kServer,
11525 AUTH_SYNC,
11526 OK,
11527 3,
11528 kNoSSL,
11529 {TestRound(kGetProxy, kProxyChallenge, OK),
11409 TestRound(kGetProxyAuth, kServerChallenge, OK), 11530 TestRound(kGetProxyAuth, kServerChallenge, OK),
11410 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}}, 11531 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
11411 { kProxy, AUTH_ASYNC, OK, kServer, AUTH_SYNC, kAuthErr, 3, kNoSSL, 11532 {kProxy,
11412 { TestRound(kGetProxy, kProxyChallenge, OK), 11533 AUTH_ASYNC,
11413 TestRound(kGetProxyAuth, kServerChallenge, OK), 11534 OK,
11414 TestRound(kGetAuthWithProxyAuth, kFailure, kAuthErr)}}, 11535 kServer,
11415 { kProxy, AUTH_SYNC, OK, kServer, AUTH_ASYNC, OK, 3, kNoSSL, 11536 AUTH_SYNC,
11416 { TestRound(kGetProxy, kProxyChallenge, OK), 11537 ERR_INVALID_AUTH_CREDENTIALS,
11538 3,
11539 kNoSSL,
11540 {TestRound(kGetProxy, kProxyChallenge, OK),
11541 TestRound(kGetProxyAuth, kServerChallenge, OK),
11542 TestRound(kGetAuthWithProxyAuth, kFailure,
11543 ERR_INVALID_AUTH_CREDENTIALS)}},
11544 {kProxy,
11545 AUTH_SYNC,
11546 OK,
11547 kServer,
11548 AUTH_ASYNC,
11549 OK,
11550 3,
11551 kNoSSL,
11552 {TestRound(kGetProxy, kProxyChallenge, OK),
11417 TestRound(kGetProxyAuth, kServerChallenge, OK), 11553 TestRound(kGetProxyAuth, kServerChallenge, OK),
11418 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}}, 11554 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
11419 { kProxy, AUTH_SYNC, OK, kServer, AUTH_ASYNC, kAuthErr, 3, kNoSSL, 11555 {kProxy,
11420 { TestRound(kGetProxy, kProxyChallenge, OK), 11556 AUTH_SYNC,
11421 TestRound(kGetProxyAuth, kServerChallenge, OK), 11557 OK,
11422 TestRound(kGetAuthWithProxyAuth, kFailure, kAuthErr)}}, 11558 kServer,
11423 { kProxy, AUTH_ASYNC, OK, kServer, AUTH_ASYNC, OK, 3, kNoSSL, 11559 AUTH_ASYNC,
11424 { TestRound(kGetProxy, kProxyChallenge, OK), 11560 ERR_INVALID_AUTH_CREDENTIALS,
11561 3,
11562 kNoSSL,
11563 {TestRound(kGetProxy, kProxyChallenge, OK),
11564 TestRound(kGetProxyAuth, kServerChallenge, OK),
11565 TestRound(kGetAuthWithProxyAuth, kFailure,
11566 ERR_INVALID_AUTH_CREDENTIALS)}},
11567 {kProxy,
11568 AUTH_ASYNC,
11569 OK,
11570 kServer,
11571 AUTH_ASYNC,
11572 OK,
11573 3,
11574 kNoSSL,
11575 {TestRound(kGetProxy, kProxyChallenge, OK),
11425 TestRound(kGetProxyAuth, kServerChallenge, OK), 11576 TestRound(kGetProxyAuth, kServerChallenge, OK),
11426 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}}, 11577 TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
11427 { kProxy, AUTH_ASYNC, OK, kServer, AUTH_ASYNC, kAuthErr, 3, kNoSSL, 11578 {kProxy,
11428 { TestRound(kGetProxy, kProxyChallenge, OK), 11579 AUTH_ASYNC,
11429 TestRound(kGetProxyAuth, kServerChallenge, OK), 11580 OK,
11430 TestRound(kGetAuthWithProxyAuth, kFailure, kAuthErr)}}, 11581 kServer,
11431 // Non-authenticating HTTPS server with a direct connection. 11582 AUTH_ASYNC,
11432 { NULL, AUTH_NONE, OK, kSecureServer, AUTH_NONE, OK, 1, 0, 11583 ERR_INVALID_AUTH_CREDENTIALS,
11433 { TestRound(kGet, kSuccess, OK)}}, 11584 3,
11434 // Authenticating HTTPS server with a direct connection. 11585 kNoSSL,
11435 { NULL, AUTH_NONE, OK, kSecureServer, AUTH_SYNC, OK, 2, 0, 11586 {TestRound(kGetProxy, kProxyChallenge, OK),
11436 { TestRound(kGet, kServerChallenge, OK), 11587 TestRound(kGetProxyAuth, kServerChallenge, OK),
11437 TestRound(kGetAuth, kSuccess, OK)}}, 11588 TestRound(kGetAuthWithProxyAuth, kFailure,
11438 { NULL, AUTH_NONE, OK, kSecureServer, AUTH_SYNC, kAuthErr, 2, 0, 11589 ERR_INVALID_AUTH_CREDENTIALS)}},
11439 { TestRound(kGet, kServerChallenge, OK), 11590 // Non-authenticating HTTPS server with a direct connection.
11440 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11591 {NULL,
11441 { NULL, AUTH_NONE, OK, kSecureServer, AUTH_ASYNC, OK, 2, 0, 11592 AUTH_NONE,
11442 { TestRound(kGet, kServerChallenge, OK), 11593 OK,
11443 TestRound(kGetAuth, kSuccess, OK)}}, 11594 kSecureServer,
11444 { NULL, AUTH_NONE, OK, kSecureServer, AUTH_ASYNC, kAuthErr, 2, 0, 11595 AUTH_NONE,
11445 { TestRound(kGet, kServerChallenge, OK), 11596 OK,
11446 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11597 1,
11447 // Non-authenticating HTTPS server with a non-authenticating proxy. 11598 0,
11448 { kProxy, AUTH_NONE, OK, kSecureServer, AUTH_NONE, OK, 1, 0, 11599 {TestRound(kGet, kSuccess, OK)}},
11449 { TestRound(kConnect, kProxyConnected, OK, &kGet, &kSuccess)}}, 11600 // Authenticating HTTPS server with a direct connection.
11450 // Authenticating HTTPS server through a non-authenticating proxy. 11601 {NULL,
11451 { kProxy, AUTH_NONE, OK, kSecureServer, AUTH_SYNC, OK, 2, 0, 11602 AUTH_NONE,
11452 { TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge), 11603 OK,
11453 TestRound(kGetAuth, kSuccess, OK)}}, 11604 kSecureServer,
11454 { kProxy, AUTH_NONE, OK, kSecureServer, AUTH_SYNC, kAuthErr, 2, 0, 11605 AUTH_SYNC,
11455 { TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge), 11606 OK,
11456 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11607 2,
11457 { kProxy, AUTH_NONE, OK, kSecureServer, AUTH_ASYNC, OK, 2, 0, 11608 0,
11458 { TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge), 11609 {TestRound(kGet, kServerChallenge, OK),
11459 TestRound(kGetAuth, kSuccess, OK)}}, 11610 TestRound(kGetAuth, kSuccess, OK)}},
11460 { kProxy, AUTH_NONE, OK, kSecureServer, AUTH_ASYNC, kAuthErr, 2, 0, 11611 {NULL,
11461 { TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge), 11612 AUTH_NONE,
11462 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11613 OK,
11463 // Non-Authenticating HTTPS server through an authenticating proxy. 11614 kSecureServer,
11464 { kProxy, AUTH_SYNC, OK, kSecureServer, AUTH_NONE, OK, 2, 1, 11615 AUTH_SYNC,
11465 { TestRound(kConnect, kProxyChallenge, OK), 11616 ERR_INVALID_AUTH_CREDENTIALS,
11617 2,
11618 0,
11619 {TestRound(kGet, kServerChallenge, OK),
11620 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11621 {NULL,
11622 AUTH_NONE,
11623 OK,
11624 kSecureServer,
11625 AUTH_ASYNC,
11626 OK,
11627 2,
11628 0,
11629 {TestRound(kGet, kServerChallenge, OK),
11630 TestRound(kGetAuth, kSuccess, OK)}},
11631 {NULL,
11632 AUTH_NONE,
11633 OK,
11634 kSecureServer,
11635 AUTH_ASYNC,
11636 ERR_INVALID_AUTH_CREDENTIALS,
11637 2,
11638 0,
11639 {TestRound(kGet, kServerChallenge, OK),
11640 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11641 // Non-authenticating HTTPS server with a non-authenticating proxy.
11642 {kProxy,
11643 AUTH_NONE,
11644 OK,
11645 kSecureServer,
11646 AUTH_NONE,
11647 OK,
11648 1,
11649 0,
11650 {TestRound(kConnect, kProxyConnected, OK, &kGet, &kSuccess)}},
11651 // Authenticating HTTPS server through a non-authenticating proxy.
11652 {kProxy,
11653 AUTH_NONE,
11654 OK,
11655 kSecureServer,
11656 AUTH_SYNC,
11657 OK,
11658 2,
11659 0,
11660 {TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
11661 TestRound(kGetAuth, kSuccess, OK)}},
11662 {kProxy,
11663 AUTH_NONE,
11664 OK,
11665 kSecureServer,
11666 AUTH_SYNC,
11667 ERR_INVALID_AUTH_CREDENTIALS,
11668 2,
11669 0,
11670 {TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
11671 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11672 {kProxy,
11673 AUTH_NONE,
11674 OK,
11675 kSecureServer,
11676 AUTH_ASYNC,
11677 OK,
11678 2,
11679 0,
11680 {TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
11681 TestRound(kGetAuth, kSuccess, OK)}},
11682 {kProxy,
11683 AUTH_NONE,
11684 OK,
11685 kSecureServer,
11686 AUTH_ASYNC,
11687 ERR_INVALID_AUTH_CREDENTIALS,
11688 2,
11689 0,
11690 {TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
11691 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11692 // Non-Authenticating HTTPS server through an authenticating proxy.
11693 {kProxy,
11694 AUTH_SYNC,
11695 OK,
11696 kSecureServer,
11697 AUTH_NONE,
11698 OK,
11699 2,
11700 1,
11701 {TestRound(kConnect, kProxyChallenge, OK),
11466 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet, &kSuccess)}}, 11702 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet, &kSuccess)}},
11467 { kProxy, AUTH_SYNC, kAuthErr, kSecureServer, AUTH_NONE, OK, 2, kNoSSL, 11703 {kProxy,
11468 { TestRound(kConnect, kProxyChallenge, OK), 11704 AUTH_SYNC,
11469 TestRound(kConnectProxyAuth, kFailure, kAuthErr)}}, 11705 ERR_INVALID_AUTH_CREDENTIALS,
11470 { kProxy, AUTH_ASYNC, OK, kSecureServer, AUTH_NONE, OK, 2, 1, 11706 kSecureServer,
11471 { TestRound(kConnect, kProxyChallenge, OK), 11707 AUTH_NONE,
11708 OK,
11709 2,
11710 kNoSSL,
11711 {TestRound(kConnect, kProxyChallenge, OK),
11712 TestRound(kConnectProxyAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11713 {kProxy,
11714 AUTH_ASYNC,
11715 OK,
11716 kSecureServer,
11717 AUTH_NONE,
11718 OK,
11719 2,
11720 1,
11721 {TestRound(kConnect, kProxyChallenge, OK),
11472 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet, &kSuccess)}}, 11722 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet, &kSuccess)}},
11473 { kProxy, AUTH_ASYNC, kAuthErr, kSecureServer, AUTH_NONE, OK, 2, kNoSSL, 11723 {kProxy,
11474 { TestRound(kConnect, kProxyChallenge, OK), 11724 AUTH_ASYNC,
11475 TestRound(kConnectProxyAuth, kFailure, kAuthErr)}}, 11725 ERR_INVALID_AUTH_CREDENTIALS,
11476 // Authenticating HTTPS server through an authenticating proxy. 11726 kSecureServer,
11477 { kProxy, AUTH_SYNC, OK, kSecureServer, AUTH_SYNC, OK, 3, 1, 11727 AUTH_NONE,
11478 { TestRound(kConnect, kProxyChallenge, OK), 11728 OK,
11479 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11729 2,
11480 &kGet, &kServerChallenge), 11730 kNoSSL,
11481 TestRound(kGetAuth, kSuccess, OK)}}, 11731 {TestRound(kConnect, kProxyChallenge, OK),
11482 { kProxy, AUTH_SYNC, OK, kSecureServer, AUTH_SYNC, kAuthErr, 3, 1, 11732 TestRound(kConnectProxyAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11483 { TestRound(kConnect, kProxyChallenge, OK), 11733 // Authenticating HTTPS server through an authenticating proxy.
11484 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11734 {kProxy,
11485 &kGet, &kServerChallenge), 11735 AUTH_SYNC,
11486 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11736 OK,
11487 { kProxy, AUTH_ASYNC, OK, kSecureServer, AUTH_SYNC, OK, 3, 1, 11737 kSecureServer,
11488 { TestRound(kConnect, kProxyChallenge, OK), 11738 AUTH_SYNC,
11489 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11739 OK,
11490 &kGet, &kServerChallenge), 11740 3,
11491 TestRound(kGetAuth, kSuccess, OK)}}, 11741 1,
11492 { kProxy, AUTH_ASYNC, OK, kSecureServer, AUTH_SYNC, kAuthErr, 3, 1, 11742 {TestRound(kConnect, kProxyChallenge, OK),
11493 { TestRound(kConnect, kProxyChallenge, OK), 11743 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11494 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11744 &kServerChallenge),
11495 &kGet, &kServerChallenge), 11745 TestRound(kGetAuth, kSuccess, OK)}},
11496 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11746 {kProxy,
11497 { kProxy, AUTH_SYNC, OK, kSecureServer, AUTH_ASYNC, OK, 3, 1, 11747 AUTH_SYNC,
11498 { TestRound(kConnect, kProxyChallenge, OK), 11748 OK,
11499 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11749 kSecureServer,
11500 &kGet, &kServerChallenge), 11750 AUTH_SYNC,
11501 TestRound(kGetAuth, kSuccess, OK)}}, 11751 ERR_INVALID_AUTH_CREDENTIALS,
11502 { kProxy, AUTH_SYNC, OK, kSecureServer, AUTH_ASYNC, kAuthErr, 3, 1, 11752 3,
11503 { TestRound(kConnect, kProxyChallenge, OK), 11753 1,
11504 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11754 {TestRound(kConnect, kProxyChallenge, OK),
11505 &kGet, &kServerChallenge), 11755 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11506 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11756 &kServerChallenge),
11507 { kProxy, AUTH_ASYNC, OK, kSecureServer, AUTH_ASYNC, OK, 3, 1, 11757 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11508 { TestRound(kConnect, kProxyChallenge, OK), 11758 {kProxy,
11509 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11759 AUTH_ASYNC,
11510 &kGet, &kServerChallenge), 11760 OK,
11511 TestRound(kGetAuth, kSuccess, OK)}}, 11761 kSecureServer,
11512 { kProxy, AUTH_ASYNC, OK, kSecureServer, AUTH_ASYNC, kAuthErr, 3, 1, 11762 AUTH_SYNC,
11513 { TestRound(kConnect, kProxyChallenge, OK), 11763 OK,
11514 TestRound(kConnectProxyAuth, kProxyConnected, OK, 11764 3,
11515 &kGet, &kServerChallenge), 11765 1,
11516 TestRound(kGetAuth, kFailure, kAuthErr)}}, 11766 {TestRound(kConnect, kProxyChallenge, OK),
11767 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11768 &kServerChallenge),
11769 TestRound(kGetAuth, kSuccess, OK)}},
11770 {kProxy,
11771 AUTH_ASYNC,
11772 OK,
11773 kSecureServer,
11774 AUTH_SYNC,
11775 ERR_INVALID_AUTH_CREDENTIALS,
11776 3,
11777 1,
11778 {TestRound(kConnect, kProxyChallenge, OK),
11779 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11780 &kServerChallenge),
11781 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11782 {kProxy,
11783 AUTH_SYNC,
11784 OK,
11785 kSecureServer,
11786 AUTH_ASYNC,
11787 OK,
11788 3,
11789 1,
11790 {TestRound(kConnect, kProxyChallenge, OK),
11791 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11792 &kServerChallenge),
11793 TestRound(kGetAuth, kSuccess, OK)}},
11794 {kProxy,
11795 AUTH_SYNC,
11796 OK,
11797 kSecureServer,
11798 AUTH_ASYNC,
11799 ERR_INVALID_AUTH_CREDENTIALS,
11800 3,
11801 1,
11802 {TestRound(kConnect, kProxyChallenge, OK),
11803 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11804 &kServerChallenge),
11805 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11806 {kProxy,
11807 AUTH_ASYNC,
11808 OK,
11809 kSecureServer,
11810 AUTH_ASYNC,
11811 OK,
11812 3,
11813 1,
11814 {TestRound(kConnect, kProxyChallenge, OK),
11815 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11816 &kServerChallenge),
11817 TestRound(kGetAuth, kSuccess, OK)}},
11818 {kProxy,
11819 AUTH_ASYNC,
11820 OK,
11821 kSecureServer,
11822 AUTH_ASYNC,
11823 ERR_INVALID_AUTH_CREDENTIALS,
11824 3,
11825 1,
11826 {TestRound(kConnect, kProxyChallenge, OK),
11827 TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
11828 &kServerChallenge),
11829 TestRound(kGetAuth, kFailure, ERR_INVALID_AUTH_CREDENTIALS)}},
11517 }; 11830 };
11518 11831
11519 for (size_t i = 0; i < arraysize(test_configs); ++i) { 11832 for (size_t i = 0; i < arraysize(test_configs); ++i) {
11520 HttpAuthHandlerMock::Factory* auth_factory( 11833 HttpAuthHandlerMock::Factory* auth_factory(
11521 new HttpAuthHandlerMock::Factory()); 11834 new HttpAuthHandlerMock::Factory());
11522 session_deps_.http_auth_handler_factory.reset(auth_factory); 11835 session_deps_.http_auth_handler_factory.reset(auth_factory);
11523 SSLInfo empty_ssl_info; 11836 SSLInfo empty_ssl_info;
11524 const TestConfig& test_config = test_configs[i]; 11837 const TestConfig& test_config = test_configs[i];
11525 11838
11526 // Set up authentication handlers as necessary. 11839 // Set up authentication handlers as necessary.
(...skipping 3994 matching lines...) Expand 10 before | Expand all | Expand 10 after
15521 base::RunLoop().RunUntilIdle(); 15834 base::RunLoop().RunUntilIdle();
15522 15835
15523 EXPECT_TRUE(trans.GetResponseInfo()->was_fetched_via_spdy); 15836 EXPECT_TRUE(trans.GetResponseInfo()->was_fetched_via_spdy);
15524 HttpRequestHeaders headers; 15837 HttpRequestHeaders headers;
15525 ASSERT_TRUE(trans.GetFullRequestHeaders(&headers)); 15838 ASSERT_TRUE(trans.GetFullRequestHeaders(&headers));
15526 EXPECT_TRUE(headers.HasHeader(HttpRequestHeaders::kTokenBinding)); 15839 EXPECT_TRUE(headers.HasHeader(HttpRequestHeaders::kTokenBinding));
15527 } 15840 }
15528 #endif // !defined(OS_IOS) 15841 #endif // !defined(OS_IOS)
15529 15842
15530 } // namespace net 15843 } // namespace net
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698