Fixed: http->https redirects do not use the tls1.2 curl fallback.

fixes #1862
This commit is contained in:
Leonardo Galli
2018-03-04 15:49:41 +01:00
parent 57adf0e3a5
commit 799a448544
4 changed files with 84 additions and 27 deletions

View File

@@ -54,7 +54,7 @@ namespace NzbDrone.Common.Test.Http
response.Content.Should().NotBeNullOrWhiteSpace();
}
[Test]
public void should_execute_https_get()
{
@@ -137,6 +137,33 @@ namespace NzbDrone.Common.Test.Http
ExceptionVerification.ExpectedErrors(0);
}
[Test]
public void should_follow_redirects_to_https()
{
var request = new HttpRequestBuilder($"http://{_httpBinHost}/redirect-to")
.AddQueryParam("url", $"https://sonarr.tv/")
.Build();
request.AllowAutoRedirect = true;
var response = Subject.Get(request);
response.StatusCode.Should().Be(HttpStatusCode.OK);
response.Content.Should().Contain("Sonarr");
ExceptionVerification.ExpectedErrors(0);
}
[Test]
public void should_throw_on_too_many_redirects()
{
var request = new HttpRequest($"http://{_httpBinHost}/redirect/4");
request.AllowAutoRedirect = true;
Assert.Throws<WebException>(() => Subject.Get(request));
ExceptionVerification.ExpectedErrors(0);
}
[Test]
public void should_send_user_agent()
{
@@ -400,4 +427,4 @@ namespace NzbDrone.Common.Test.Http
public string Url { get; set; }
public string Data { get; set; }
}
}
}