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

Unified Diff: net/http/http_network_transaction_unittest.cc

Issue 51004: Respect cookies set in a 401 responses when restarting the http transaction.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: address rest of wtc's comments (had missed some in previous patchset) Created 11 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/http/http_network_transaction.cc ('k') | net/http/http_transaction.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/http/http_network_transaction_unittest.cc
===================================================================
--- net/http/http_network_transaction_unittest.cc (revision 12402)
+++ net/http/http_network_transaction_unittest.cc (working copy)
@@ -1607,7 +1607,7 @@
};
MockWrite data_writes2[] = {
- // After automatically restarting with a null identity, this is the
+ // After restarting with a null identity, this is the
// request we should be issuing -- the final header line contains a Type
// 1 message.
MockWrite("GET /kids/login.aspx HTTP/1.1\r\n"
@@ -1671,6 +1671,14 @@
rv = callback1.WaitForResult();
EXPECT_EQ(net::OK, rv);
+ EXPECT_TRUE(trans->IsReadyToRestartForAuth());
+ TestCompletionCallback callback2;
+ rv = trans->RestartWithAuth(std::wstring(), std::wstring(), &callback2);
+ EXPECT_EQ(net::ERR_IO_PENDING, rv);
+ rv = callback2.WaitForResult();
+ EXPECT_EQ(net::OK, rv);
+ EXPECT_FALSE(trans->IsReadyToRestartForAuth());
+
const net::HttpResponseInfo* response = trans->GetResponseInfo();
EXPECT_FALSE(response == NULL);
@@ -1682,12 +1690,12 @@
EXPECT_EQ(L"", response->auth_challenge->realm);
EXPECT_EQ(L"ntlm", response->auth_challenge->scheme);
- TestCompletionCallback callback2;
+ TestCompletionCallback callback3;
- rv = trans->RestartWithAuth(L"testing-ntlm", L"testing-ntlm", &callback2);
+ rv = trans->RestartWithAuth(L"testing-ntlm", L"testing-ntlm", &callback3);
EXPECT_EQ(net::ERR_IO_PENDING, rv);
- rv = callback2.WaitForResult();
+ rv = callback3.WaitForResult();
EXPECT_EQ(net::OK, rv);
response = trans->GetResponseInfo();
@@ -1729,7 +1737,7 @@
};
MockWrite data_writes2[] = {
- // After automatically restarting with a null identity, this is the
+ // After restarting with a null identity, this is the
// request we should be issuing -- the final header line contains a Type
// 1 message.
MockWrite("GET /kids/login.aspx HTTP/1.1\r\n"
@@ -1780,7 +1788,7 @@
};
MockWrite data_writes3[] = {
- // After automatically restarting with a null identity, this is the
+ // After restarting with a null identity, this is the
// request we should be issuing -- the final header line contains a Type
// 1 message.
MockWrite("GET /kids/login.aspx HTTP/1.1\r\n"
@@ -1848,6 +1856,14 @@
rv = callback1.WaitForResult();
EXPECT_EQ(net::OK, rv);
+ EXPECT_TRUE(trans->IsReadyToRestartForAuth());
+ TestCompletionCallback callback2;
+ rv = trans->RestartWithAuth(std::wstring(), std::wstring(), &callback2);
+ EXPECT_EQ(net::ERR_IO_PENDING, rv);
+ rv = callback2.WaitForResult();
+ EXPECT_EQ(net::OK, rv);
+ EXPECT_FALSE(trans->IsReadyToRestartForAuth());
+
const net::HttpResponseInfo* response = trans->GetResponseInfo();
EXPECT_FALSE(response == NULL);
@@ -1859,15 +1875,23 @@
EXPECT_EQ(L"", response->auth_challenge->realm);
EXPECT_EQ(L"ntlm", response->auth_challenge->scheme);
- TestCompletionCallback callback2;
+ TestCompletionCallback callback3;
// Enter the wrong password.
- rv = trans->RestartWithAuth(L"testing-ntlm", L"wrongpassword", &callback2);
+ rv = trans->RestartWithAuth(L"testing-ntlm", L"wrongpassword", &callback3);
EXPECT_EQ(net::ERR_IO_PENDING, rv);
- rv = callback2.WaitForResult();
+ rv = callback3.WaitForResult();
EXPECT_EQ(net::OK, rv);
+ EXPECT_TRUE(trans->IsReadyToRestartForAuth());
+ TestCompletionCallback callback4;
+ rv = trans->RestartWithAuth(std::wstring(), std::wstring(), &callback4);
+ EXPECT_EQ(net::ERR_IO_PENDING, rv);
+ rv = callback4.WaitForResult();
+ EXPECT_EQ(net::OK, rv);
+ EXPECT_FALSE(trans->IsReadyToRestartForAuth());
+
response = trans->GetResponseInfo();
EXPECT_FALSE(response == NULL);
@@ -1879,13 +1903,13 @@
EXPECT_EQ(L"", response->auth_challenge->realm);
EXPECT_EQ(L"ntlm", response->auth_challenge->scheme);
- TestCompletionCallback callback3;
+ TestCompletionCallback callback5;
// Now enter the right password.
- rv = trans->RestartWithAuth(L"testing-ntlm", L"testing-ntlm", &callback3);
+ rv = trans->RestartWithAuth(L"testing-ntlm", L"testing-ntlm", &callback5);
EXPECT_EQ(net::ERR_IO_PENDING, rv);
- rv = callback3.WaitForResult();
+ rv = callback5.WaitForResult();
EXPECT_EQ(net::OK, rv);
response = trans->GetResponseInfo();
@@ -2143,6 +2167,14 @@
rv = callback1.WaitForResult();
EXPECT_EQ(net::OK, rv);
+ EXPECT_TRUE(trans->IsReadyToRestartForAuth());
+ TestCompletionCallback callback2;
+ rv = trans->RestartWithAuth(std::wstring(), std::wstring(), &callback2);
+ EXPECT_EQ(net::ERR_IO_PENDING, rv);
+ rv = callback2.WaitForResult();
+ EXPECT_EQ(net::OK, rv);
+ EXPECT_FALSE(trans->IsReadyToRestartForAuth());
+
const net::HttpResponseInfo* response = trans->GetResponseInfo();
EXPECT_FALSE(response == NULL);
@@ -2446,6 +2478,14 @@
rv = callback1.WaitForResult();
EXPECT_EQ(net::OK, rv);
+ EXPECT_TRUE(trans->IsReadyToRestartForAuth());
+ TestCompletionCallback callback2;
+ rv = trans->RestartWithAuth(std::wstring(), std::wstring(), &callback2);
+ EXPECT_EQ(net::ERR_IO_PENDING, rv);
+ rv = callback2.WaitForResult();
+ EXPECT_EQ(net::OK, rv);
+ EXPECT_FALSE(trans->IsReadyToRestartForAuth());
+
const net::HttpResponseInfo* response = trans->GetResponseInfo();
EXPECT_FALSE(response == NULL);
EXPECT_TRUE(response->auth_challenge.get() == NULL);
@@ -2533,6 +2573,14 @@
rv = callback1.WaitForResult();
EXPECT_EQ(net::OK, rv);
+ EXPECT_TRUE(trans->IsReadyToRestartForAuth());
+ TestCompletionCallback callback2;
+ rv = trans->RestartWithAuth(std::wstring(), std::wstring(), &callback2);
+ EXPECT_EQ(net::ERR_IO_PENDING, rv);
+ rv = callback2.WaitForResult();
+ EXPECT_EQ(net::OK, rv);
+ EXPECT_FALSE(trans->IsReadyToRestartForAuth());
+
const net::HttpResponseInfo* response = trans->GetResponseInfo();
EXPECT_FALSE(response == NULL);
@@ -2545,12 +2593,12 @@
EXPECT_EQ(L"MyRealm1", response->auth_challenge->realm);
EXPECT_EQ(L"basic", response->auth_challenge->scheme);
- TestCompletionCallback callback2;
+ TestCompletionCallback callback3;
- rv = trans->RestartWithAuth(L"foo3", L"bar3", &callback2);
+ rv = trans->RestartWithAuth(L"foo3", L"bar3", &callback3);
EXPECT_EQ(net::ERR_IO_PENDING, rv);
- rv = callback2.WaitForResult();
+ rv = callback3.WaitForResult();
EXPECT_EQ(net::OK, rv);
response = trans->GetResponseInfo();
« no previous file with comments | « net/http/http_network_transaction.cc ('k') | net/http/http_transaction.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698