Revert the temporary fix of HttpClient where cookies were not being sent as part of redirect request

This commit is contained in:
Kiran Challa 2016-03-31 10:05:32 -07:00
parent a587270b61
commit 4d9b7edfd8
10 changed files with 9 additions and 33 deletions

View File

@ -42,7 +42,7 @@ namespace E2ETests
//Assert.NotNull(_httpClientHandler.CookieContainer.GetCookies(new Uri(_deploymentResult.ApplicationBaseUri)).GetCookieWithName(".AspNetCore.Correlation.Facebook"));
//This is just to generate a correlation cookie. Previous step would generate this cookie, but we have reset the handler now.
_httpClientHandler = new HttpClientHandler() { AllowAutoRedirect = false };
_httpClientHandler = new HttpClientHandler();
_httpClient = new HttpClient(_httpClientHandler) { BaseAddress = new Uri(_deploymentResult.ApplicationBaseUri) };
response = await DoGetAsync("Account/Login");
@ -56,10 +56,8 @@ namespace E2ETests
content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/ExternalLogin", content);
response = await DoGetAsync(response.Headers.Location);
//Post a message to the Facebook middleware
response = await DoGetAsync("signin-facebook?code=ValidCode&state=ValidStateData");
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();
@ -79,7 +77,6 @@ namespace E2ETests
content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/ExternalLoginConfirmation", content);
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();

View File

@ -43,7 +43,7 @@ namespace E2ETests
//Assert.NotNull(_httpClientHandler.CookieContainer.GetCookies(new Uri(_deploymentResult.ApplicationBaseUri)).GetCookieWithName(".AspNetCore.Correlation.Google"));
//This is just to generate a correlation cookie. Previous step would generate this cookie, but we have reset the handler now.
_httpClientHandler = new HttpClientHandler() { AllowAutoRedirect = false };
_httpClientHandler = new HttpClientHandler();
_httpClient = new HttpClient(_httpClientHandler) { BaseAddress = new Uri(_deploymentResult.ApplicationBaseUri) };
response = await DoGetAsync("Account/Login");
@ -60,7 +60,6 @@ namespace E2ETests
//Post a message to the Google middleware
response = await DoGetAsync("signin-google?code=ValidCode&state=ValidStateData");
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();
@ -80,7 +79,6 @@ namespace E2ETests
content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/ExternalLoginConfirmation", content);
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();

View File

@ -43,7 +43,7 @@ namespace E2ETests
//Assert.NotNull(_httpClientHandler.CookieContainer.GetCookies(new Uri(_deploymentResult.ApplicationBaseUri)).GetCookieWithName(".AspNetCore.Correlation.Microsoft"));
//This is just to generate a correlation cookie. Previous step would generate this cookie, but we have reset the handler now.
_httpClientHandler = new HttpClientHandler() { AllowAutoRedirect = false };
_httpClientHandler = new HttpClientHandler();
_httpClient = new HttpClient(_httpClientHandler) { BaseAddress = new Uri(_deploymentResult.ApplicationBaseUri) };
response = await DoGetAsync("Account/Login");
@ -57,10 +57,8 @@ namespace E2ETests
content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/ExternalLogin", content);
response = await DoGetAsync(response.Headers.Location);
//Post a message to the MicrosoftAccount middleware
response = await DoGetAsync("signin-microsoft?code=ValidCode&state=ValidStateData");
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();
@ -79,7 +77,6 @@ namespace E2ETests
content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/ExternalLoginConfirmation", content);
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();

View File

@ -42,7 +42,7 @@ namespace E2ETests
Assert.NotNull(_httpClientHandler.CookieContainer.GetCookies(new Uri(_deploymentResult.ApplicationBaseUri)).GetCookieWithName(".AspNetCore.OpenIdConnect.Nonce.protectedString"));
// This is just enable the auto-redirect.
_httpClientHandler = new HttpClientHandler() { AllowAutoRedirect = true };
_httpClientHandler = new HttpClientHandler();
_httpClient = new HttpClient(_httpClientHandler) { BaseAddress = new Uri(_deploymentResult.ApplicationBaseUri) };
foreach (var header in Microsoft.Net.Http.Headers.SetCookieHeaderValue.ParseList(response.Headers.GetValues("Set-Cookie").ToList()))
{

View File

@ -41,7 +41,7 @@ namespace E2ETests
Assert.NotNull(_httpClientHandler.CookieContainer.GetCookies(new Uri(_deploymentResult.ApplicationBaseUri))["__TwitterState"]);
//This is just to generate a correlation cookie. Previous step would generate this cookie, but we have reset the handler now.
_httpClientHandler = new HttpClientHandler() { AllowAutoRedirect = false };
_httpClientHandler = new HttpClientHandler();
_httpClient = new HttpClient(_httpClientHandler) { BaseAddress = new Uri(_deploymentResult.ApplicationBaseUri) };
response = await DoGetAsync("Account/Login");
@ -55,10 +55,8 @@ namespace E2ETests
content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/ExternalLogin", content);
response = await DoGetAsync(response.Headers.Location);
//Post a message to the Facebook middleware
response = await DoGetAsync("signin-twitter?oauth_token=valid_oauth_token&oauth_verifier=valid_oauth_verifier");
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();
@ -79,7 +77,6 @@ namespace E2ETests
content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/ExternalLoginConfirmation", content);
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
responseContent = await response.Content.ReadAsStringAsync();

View File

@ -209,7 +209,6 @@ namespace E2ETests
{
_logger.LogInformation("Trying to access StoreManager that needs ManageStore claim with the current user : {email}", email ?? "Anonymous");
var response = await DoGetAsync("Admin/StoreManager/");
response = await DoGetAsync(response.Headers.Location);
var responseContent = await response.Content.ReadAsStringAsync();
ValidateLayoutPage(responseContent);
@ -327,7 +326,6 @@ namespace E2ETests
var content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/LogOff", content);
response = await DoGetAsync(response.Headers.Location);
responseContent = await response.Content.ReadAsStringAsync();
if (!Helpers.RunningOnMono)
@ -386,7 +384,6 @@ namespace E2ETests
var content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Account/Login", content);
response = await DoGetAsync(response.Headers.Location);
responseContent = await response.Content.ReadAsStringAsync();
Assert.Contains(string.Format("Hello {0}!", email), responseContent, StringComparison.OrdinalIgnoreCase);
Assert.Contains("Log off", responseContent, StringComparison.OrdinalIgnoreCase);
@ -410,7 +407,6 @@ namespace E2ETests
var content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Manage/ChangePassword", content);
response = await DoGetAsync(response.Headers.Location);
responseContent = await response.Content.ReadAsStringAsync();
Assert.Contains("Your password has been changed.", responseContent, StringComparison.OrdinalIgnoreCase);
Assert.NotNull(_httpClientHandler.CookieContainer.GetCookies(new Uri(_deploymentResult.ApplicationBaseUri)).GetCookieWithName(IdentityCookieName));
@ -436,7 +432,6 @@ namespace E2ETests
var content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Admin/StoreManager/create", content);
response = await DoGetAsync(response.Headers.Location);
responseContent = await response.Content.ReadAsStringAsync();
Assert.Equal<string>(_deploymentResult.ApplicationBaseUri + "Admin/StoreManager", response.RequestMessage.RequestUri.AbsoluteUri);
Assert.Contains(albumName, responseContent);
@ -482,7 +477,6 @@ namespace E2ETests
{
_logger.LogInformation("Getting details of a non-existing album with Id '-1'");
var response = await DoGetAsync("Admin/StoreManager/Details?id=-1");
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
var responseContent = await response.Content.ReadAsStringAsync();
Assert.Contains("Item not found.", responseContent, StringComparison.OrdinalIgnoreCase);
@ -504,7 +498,6 @@ namespace E2ETests
{
_logger.LogInformation("Adding album id '{albumId}' to the cart", albumId);
var response = await DoGetAsync(string.Format("ShoppingCart/AddToCart?id={0}", albumId));
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
var responseContent = await response.Content.ReadAsStringAsync();
Assert.Contains(albumName, responseContent, StringComparison.OrdinalIgnoreCase);
@ -536,7 +529,6 @@ namespace E2ETests
var content = new FormUrlEncodedContent(formParameters.ToArray());
response = await DoPostAsync("Checkout/AddressAndPayment", content);
response = await DoGetAsync(response.Headers.Location);
responseContent = await response.Content.ReadAsStringAsync();
Assert.Contains("<h2>Checkout Complete</h2>", responseContent, StringComparison.OrdinalIgnoreCase);
Assert.StartsWith(_deploymentResult.ApplicationBaseUri + "Checkout/Complete/", response.RequestMessage.RequestUri.AbsoluteUri, StringComparison.OrdinalIgnoreCase);
@ -553,7 +545,6 @@ namespace E2ETests
var content = new FormUrlEncodedContent(formParameters.ToArray());
var response = await DoPostAsync("Admin/StoreManager/RemoveAlbum", content);
response = await DoGetAsync(response.Headers.Location);
await ThrowIfResponseStatusNotOk(response);
_logger.LogInformation("Verifying if the album '{album}' is deleted from store", albumName);

View File

@ -56,7 +56,7 @@ namespace E2ETests
using (var deployer = ApplicationDeployerFactory.Create(deploymentParameters, _logger))
{
var deploymentResult = deployer.Deploy();
var httpClientHandler = new HttpClientHandler() { UseDefaultCredentials = true, AllowAutoRedirect = false };
var httpClientHandler = new HttpClientHandler() { UseDefaultCredentials = true };
var httpClient = new HttpClient(httpClientHandler) { BaseAddress = new Uri(deploymentResult.ApplicationBaseUri) };
// Request to base address and check if various parts of the body are rendered & measure the cold startup time.

View File

@ -81,7 +81,7 @@ namespace E2ETests
using (var deployer = ApplicationDeployerFactory.Create(deploymentParameters, _logger))
{
var deploymentResult = deployer.Deploy();
var httpClientHandler = new HttpClientHandler() { AllowAutoRedirect = false };
var httpClientHandler = new HttpClientHandler();
var httpClient = new HttpClient(httpClientHandler) { BaseAddress = new Uri(deploymentResult.ApplicationBaseUri) };
// Request to base address and check if various parts of the body are rendered & measure the cold startup time.

View File

@ -155,7 +155,7 @@ namespace E2ETests
using (var deployer = ApplicationDeployerFactory.Create(deploymentParameters, _logger))
{
var deploymentResult = deployer.Deploy();
var httpClientHandler = new HttpClientHandler() { UseDefaultCredentials = true, AllowAutoRedirect = false };
var httpClientHandler = new HttpClientHandler() { UseDefaultCredentials = true };
var httpClient = new HttpClient(httpClientHandler);
httpClient.BaseAddress = new Uri(deploymentResult.ApplicationBaseUri);

View File

@ -188,11 +188,7 @@ namespace E2ETests
var deploymentResult = deployer.Deploy();
Helpers.SetInMemoryStoreForIIS(deploymentParameters, _logger);
var httpClientHandler = new HttpClientHandler()
{
// Temporary workaround for issue https://github.com/dotnet/corefx/issues/4960
AllowAutoRedirect = false
};
var httpClientHandler = new HttpClientHandler();
var httpClient = new HttpClient(httpClientHandler)
{
BaseAddress = new Uri(deploymentResult.ApplicationBaseUri),