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

Unified Diff: net/http/http_network_transaction_unittest.cc

Issue 2489883007: [net/auth] Discard current handler token generation fails. (Closed)
Patch Set: Missed a few comments in the last round. 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/http/http_auth_handler_mock.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/http/http_network_transaction_unittest.cc
diff --git a/net/http/http_network_transaction_unittest.cc b/net/http/http_network_transaction_unittest.cc
index b03612e4615e0dd8edfff764b2546d51ac3aac8d..f4ab0aad04960bf87a6afb3a4093e03e6448c9e9 100644
--- a/net/http/http_network_transaction_unittest.cc
+++ b/net/http/http_network_transaction_unittest.cc
@@ -11556,18 +11556,20 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
static const int kNoSSL = 500;
struct TestConfig {
+ int line_number;
const char* const proxy_url;
AuthTiming proxy_auth_timing;
- int proxy_auth_rv;
+ int first_generate_proxy_token_rv;
const char* const server_url;
AuthTiming server_auth_timing;
- int server_auth_rv;
+ int first_generate_server_token_rv;
int num_auth_rounds;
int first_ssl_round;
TestRound rounds[4];
} test_configs[] = {
// Non-authenticating HTTP server with a direct connection.
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11577,7 +11579,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGet, kSuccess, OK)}},
// Authenticating HTTP server with a direct connection.
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11587,7 +11590,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGet, kServerChallenge, OK),
TestRound(kGetAuth, kSuccess, OK)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11598,7 +11602,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGet, kServerChallenge, OK),
TestRound(kGet, kServerChallenge, OK),
TestRound(kGetAuth, kSuccess, OK)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11607,7 +11612,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
2,
kNoSSL,
{TestRound(kGet, kServerChallenge, OK), TestRound(kGet, kSuccess, OK)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11616,7 +11622,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
2,
kNoSSL,
{TestRound(kGet, kServerChallenge, OK), TestRound(kGet, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
ERR_FAILED,
kServer,
@@ -11626,7 +11633,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxy, kFailure, ERR_FAILED)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
ERR_FAILED,
kServer,
@@ -11636,7 +11644,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxy, kFailure, ERR_FAILED)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11646,7 +11655,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGet, kServerChallenge, OK),
TestRound(kGet, kFailure, ERR_FAILED)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11656,7 +11666,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGet, kServerChallenge, OK),
TestRound(kGet, kFailure, ERR_FAILED)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11666,7 +11677,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGet, kServerChallenge, OK),
TestRound(kGetAuth, kSuccess, OK)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kServer,
@@ -11679,7 +11691,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kGet, kServerChallenge, OK),
TestRound(kGetAuth, kSuccess, OK)}},
// Non-authenticating HTTP server through a non-authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kServer,
@@ -11689,7 +11702,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kSuccess, OK)}},
// Authenticating HTTP server through a non-authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kServer,
@@ -11699,7 +11713,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kServerChallenge, OK),
TestRound(kGetAuthThroughProxy, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kServer,
@@ -11710,7 +11725,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kServerChallenge, OK),
TestRound(kGetProxy, kServerChallenge, OK),
TestRound(kGetAuthThroughProxy, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kServer,
@@ -11720,7 +11736,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kServerChallenge, OK),
TestRound(kGetAuthThroughProxy, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kServer,
@@ -11731,7 +11748,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kServerChallenge, OK),
TestRound(kGetProxy, kSuccess, OK)}},
// Non-authenticating HTTP server through an authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kServer,
@@ -11741,7 +11759,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
ERR_INVALID_AUTH_CREDENTIALS,
kServer,
@@ -11751,7 +11770,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxy, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kServer,
@@ -11761,7 +11781,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
ERR_INVALID_AUTH_CREDENTIALS,
kServer,
@@ -11771,8 +11792,21 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxy, kSuccess, OK)}},
+ {__LINE__,
+ kProxy,
+ AUTH_ASYNC,
+ ERR_INVALID_AUTH_CREDENTIALS,
+ kServer,
+ AUTH_NONE,
+ OK,
+ 3,
+ kNoSSL,
+ {TestRound(kGetProxy, kProxyChallenge, OK),
+ TestRound(kGetProxy, kProxyChallenge, OK),
+ TestRound(kGetProxyAuth, kSuccess, OK)}},
// Authenticating HTTP server through an authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kServer,
@@ -11783,7 +11817,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kServer,
@@ -11794,7 +11829,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kServer,
@@ -11805,7 +11841,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kServer,
@@ -11816,7 +11853,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kServer,
@@ -11827,7 +11865,21 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
+ AUTH_SYNC,
+ ERR_INVALID_AUTH_CREDENTIALS,
+ kServer,
+ AUTH_ASYNC,
+ OK,
+ 4,
+ kNoSSL,
+ {TestRound(kGetProxy, kProxyChallenge, OK),
+ TestRound(kGetProxy, kProxyChallenge, OK),
+ TestRound(kGetProxyAuth, kServerChallenge, OK),
+ TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kServer,
@@ -11838,7 +11890,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kServer,
@@ -11849,7 +11902,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetAuthWithProxyAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kServer,
@@ -11860,8 +11914,22 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kGetProxy, kProxyChallenge, OK),
TestRound(kGetProxyAuth, kServerChallenge, OK),
TestRound(kGetProxyAuth, kSuccess, OK)}},
+ {__LINE__,
+ kProxy,
+ AUTH_ASYNC,
+ ERR_INVALID_AUTH_CREDENTIALS,
+ kServer,
+ AUTH_ASYNC,
+ ERR_INVALID_AUTH_CREDENTIALS,
+ 4,
+ kNoSSL,
+ {TestRound(kGetProxy, kProxyChallenge, OK),
+ TestRound(kGetProxy, kProxyChallenge, OK),
+ TestRound(kGetProxyAuth, kServerChallenge, OK),
+ TestRound(kGetProxyAuth, kSuccess, OK)}},
// Non-authenticating HTTPS server with a direct connection.
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kSecureServer,
@@ -11871,7 +11939,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kGet, kSuccess, OK)}},
// Authenticating HTTPS server with a direct connection.
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kSecureServer,
@@ -11881,7 +11950,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kGet, kServerChallenge, OK),
TestRound(kGetAuth, kSuccess, OK)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kSecureServer,
@@ -11890,7 +11960,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
2,
0,
{TestRound(kGet, kServerChallenge, OK), TestRound(kGet, kSuccess, OK)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kSecureServer,
@@ -11900,7 +11971,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kGet, kServerChallenge, OK),
TestRound(kGetAuth, kSuccess, OK)}},
- {NULL,
+ {__LINE__,
+ nullptr,
AUTH_NONE,
OK,
kSecureServer,
@@ -11910,7 +11982,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kGet, kServerChallenge, OK), TestRound(kGet, kSuccess, OK)}},
// Non-authenticating HTTPS server with a non-authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kSecureServer,
@@ -11920,7 +11993,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kConnect, kProxyConnected, OK, &kGet, &kSuccess)}},
// Authenticating HTTPS server through a non-authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kSecureServer,
@@ -11930,7 +12004,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
TestRound(kGetAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kSecureServer,
@@ -11940,7 +12015,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
TestRound(kGet, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kSecureServer,
@@ -11950,7 +12026,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
0,
{TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
TestRound(kGetAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_NONE,
OK,
kSecureServer,
@@ -11961,7 +12038,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kConnect, kProxyConnected, OK, &kGet, &kServerChallenge),
TestRound(kGet, kSuccess, OK)}},
// Non-Authenticating HTTPS server through an authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kSecureServer,
@@ -11971,7 +12049,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
1,
{TestRound(kConnect, kProxyChallenge, OK),
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet, &kSuccess)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
ERR_INVALID_AUTH_CREDENTIALS,
kSecureServer,
@@ -11981,7 +12060,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kConnect, kProxyChallenge, OK),
TestRound(kConnect, kProxyConnected, OK, &kGet, &kSuccess)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
ERR_UNSUPPORTED_AUTH_SCHEME,
kSecureServer,
@@ -11991,7 +12071,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kConnect, kProxyChallenge, OK),
TestRound(kConnect, kProxyConnected, OK, &kGet, &kSuccess)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
ERR_UNEXPECTED,
kSecureServer,
@@ -12001,7 +12082,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
kNoSSL,
{TestRound(kConnect, kProxyChallenge, OK),
TestRound(kConnect, kProxyConnected, ERR_UNEXPECTED)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kSecureServer,
@@ -12011,7 +12093,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
1,
{TestRound(kConnect, kProxyChallenge, OK),
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet, &kSuccess)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
ERR_INVALID_AUTH_CREDENTIALS,
kSecureServer,
@@ -12022,7 +12105,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
{TestRound(kConnect, kProxyChallenge, OK),
TestRound(kConnect, kProxyConnected, OK, &kGet, &kSuccess)}},
// Authenticating HTTPS server through an authenticating proxy.
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kSecureServer,
@@ -12034,7 +12118,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGetAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kSecureServer,
@@ -12046,7 +12131,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGet, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kSecureServer,
@@ -12058,7 +12144,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGetAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kSecureServer,
@@ -12070,7 +12157,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGet, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kSecureServer,
@@ -12082,7 +12170,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGetAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_SYNC,
OK,
kSecureServer,
@@ -12094,7 +12183,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGet, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kSecureServer,
@@ -12106,7 +12196,8 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGetAuth, kSuccess, OK)}},
- {kProxy,
+ {__LINE__,
+ kProxy,
AUTH_ASYNC,
OK,
kSecureServer,
@@ -12118,19 +12209,33 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
&kServerChallenge),
TestRound(kGet, kSuccess, OK)}},
+ {__LINE__,
+ kProxy,
+ AUTH_ASYNC,
+ ERR_INVALID_AUTH_CREDENTIALS,
+ kSecureServer,
+ AUTH_ASYNC,
+ ERR_INVALID_AUTH_CREDENTIALS,
+ 4,
+ 2,
+ {TestRound(kConnect, kProxyChallenge, OK),
+ TestRound(kConnect, kProxyChallenge, OK),
+ TestRound(kConnectProxyAuth, kProxyConnected, OK, &kGet,
+ &kServerChallenge),
+ TestRound(kGet, kSuccess, OK)}},
};
- for (size_t i = 0; i < arraysize(test_configs); ++i) {
- SCOPED_TRACE(::testing::Message() << "Test config " << i);
+ for (const auto& test_config : test_configs) {
+ SCOPED_TRACE(::testing::Message() << "Test config at "
+ << test_config.line_number);
HttpAuthHandlerMock::Factory* auth_factory(
new HttpAuthHandlerMock::Factory());
session_deps_.http_auth_handler_factory.reset(auth_factory);
SSLInfo empty_ssl_info;
- const TestConfig& test_config = test_configs[i];
// Set up authentication handlers as necessary.
if (test_config.proxy_auth_timing != AUTH_NONE) {
- for (int n = 0; n < 2; n++) {
+ for (int n = 0; n < 3; n++) {
HttpAuthHandlerMock* auth_handler(new HttpAuthHandlerMock());
std::string auth_challenge = "Mock realm=proxy";
GURL origin(test_config.proxy_url);
@@ -12141,7 +12246,7 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
NetLogWithSource());
auth_handler->SetGenerateExpectation(
test_config.proxy_auth_timing == AUTH_ASYNC,
- test_config.proxy_auth_rv);
+ n == 0 ? test_config.first_generate_proxy_token_rv : OK);
auth_factory->AddMockHandler(auth_handler, HttpAuth::AUTH_PROXY);
}
}
@@ -12156,7 +12261,7 @@ TEST_F(HttpNetworkTransactionTest, GenerateAuthToken) {
NetLogWithSource());
auth_handler->SetGenerateExpectation(
test_config.server_auth_timing == AUTH_ASYNC,
- test_config.server_auth_rv);
+ test_config.first_generate_server_token_rv);
auth_factory->AddMockHandler(auth_handler, HttpAuth::AUTH_SERVER);
// The second handler always succeeds. It should only be used where there
@@ -12366,6 +12471,8 @@ TEST_F(HttpNetworkTransactionTest, MultiRoundAuth) {
ASSERT_TRUE(response);
EXPECT_TRUE(response->auth_challenge);
EXPECT_EQ(0, transport_pool->IdleSocketCountInGroup(kSocketGroup));
+ EXPECT_EQ(HttpAuthHandlerMock::State::WAIT_FOR_GENERATE_AUTH_TOKEN,
+ auth_handler->state());
// In between rounds, another request comes in for the same domain.
// It should not be able to grab the TCP socket that trans has already
@@ -12389,6 +12496,8 @@ TEST_F(HttpNetworkTransactionTest, MultiRoundAuth) {
ASSERT_TRUE(response);
EXPECT_FALSE(response->auth_challenge);
EXPECT_EQ(0, transport_pool->IdleSocketCountInGroup(kSocketGroup));
+ EXPECT_EQ(HttpAuthHandlerMock::State::WAIT_FOR_GENERATE_AUTH_TOKEN,
+ auth_handler->state());
// Third round of authentication.
auth_handler->SetGenerateExpectation(false, OK);
@@ -12400,6 +12509,8 @@ TEST_F(HttpNetworkTransactionTest, MultiRoundAuth) {
ASSERT_TRUE(response);
EXPECT_FALSE(response->auth_challenge);
EXPECT_EQ(0, transport_pool->IdleSocketCountInGroup(kSocketGroup));
+ EXPECT_EQ(HttpAuthHandlerMock::State::WAIT_FOR_GENERATE_AUTH_TOKEN,
+ auth_handler->state());
// Fourth round of authentication, which completes successfully.
auth_handler->SetGenerateExpectation(false, OK);
@@ -12412,6 +12523,12 @@ TEST_F(HttpNetworkTransactionTest, MultiRoundAuth) {
EXPECT_FALSE(response->auth_challenge);
EXPECT_EQ(0, transport_pool->IdleSocketCountInGroup(kSocketGroup));
+ // In WAIT_FOR_CHALLENGE, although in reality the auth handler is done. A real
+ // auth handler should transition to a DONE state in concert with the remote
+ // server. But that's not something we can test here with a mock handler.
+ EXPECT_EQ(HttpAuthHandlerMock::State::WAIT_FOR_CHALLENGE,
+ auth_handler->state());
+
// Read the body since the fourth round was successful. This will also
// release the socket back to the pool.
scoped_refptr<IOBufferWithSize> io_buf(new IOBufferWithSize(50));
« no previous file with comments | « net/http/http_auth_handler_mock.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698