From ccb6579cd721db118c0d47bf76d777a57bc162bd Mon Sep 17 00:00:00 2001 From: Pranav K Date: Thu, 27 Sep 2018 16:49:56 -0700 Subject: [PATCH 1/2] Do not return ProblemDetails for < 4xx status codes Fixes #8504 --- .../Infrastructure/ClientErrorResultFilter.cs | 7 ++++ .../ClientErrorResultFilterTest.cs | 36 +++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/src/Microsoft.AspNetCore.Mvc.Core/Infrastructure/ClientErrorResultFilter.cs b/src/Microsoft.AspNetCore.Mvc.Core/Infrastructure/ClientErrorResultFilter.cs index fd5911ea07..1ef66b1a33 100644 --- a/src/Microsoft.AspNetCore.Mvc.Core/Infrastructure/ClientErrorResultFilter.cs +++ b/src/Microsoft.AspNetCore.Mvc.Core/Infrastructure/ClientErrorResultFilter.cs @@ -43,6 +43,13 @@ namespace Microsoft.AspNetCore.Mvc.Infrastructure return; } + // We do not have an upper bound on the allowed status code. This allows this filter to be used + // for 5xx and later status codes. + if (clientError.StatusCode < 400) + { + return; + } + var result = _clientErrorFactory.GetClientError(context, clientError); if (result == null) { diff --git a/test/Microsoft.AspNetCore.Mvc.Core.Test/Infrastructure/ClientErrorResultFilterTest.cs b/test/Microsoft.AspNetCore.Mvc.Core.Test/Infrastructure/ClientErrorResultFilterTest.cs index 83098744ff..0a2c6db76d 100644 --- a/test/Microsoft.AspNetCore.Mvc.Core.Test/Infrastructure/ClientErrorResultFilterTest.cs +++ b/test/Microsoft.AspNetCore.Mvc.Core.Test/Infrastructure/ClientErrorResultFilterTest.cs @@ -68,6 +68,42 @@ namespace Microsoft.AspNetCore.Mvc.Infrastructure Assert.Same(Result, context.Result); } + [Theory] + [InlineData(400)] + [InlineData(409)] + [InlineData(503)] + public void OnResultExecuting_Transforms4XXStatusCodeResult(int statusCode) + { + // Arrange + var actionResult = new StatusCodeResult(statusCode); + var context = GetContext(actionResult); + var filter = GetFilter(); + + // Act + filter.OnResultExecuting(context); + + // Assert + Assert.Same(Result, context.Result); + } + + [Theory] + [InlineData(201)] + [InlineData(302)] + [InlineData(399)] + public void OnResultExecuting_DoesNotTransformStatusCodesLessThan400(int statusCode) + { + // Arrange + var actionResult = new StatusCodeResult(statusCode); + var context = GetContext(actionResult); + var filter = GetFilter(); + + // Act + filter.OnResultExecuting(context); + + // Assert + Assert.Same(actionResult, context.Result); + } + private static ClientErrorResultFilter GetFilter() { var factory = Mock.Of( From ef21286792ad94652eacdba8558ee65be1288e5e Mon Sep 17 00:00:00 2001 From: Nate McMaster Date: Fri, 28 Sep 2018 10:36:56 -0700 Subject: [PATCH 2/2] Fix microbuild code signing configuration (#8511) Fixup the paths to files to be signed. --- Directory.Build.props | 3 --- .../Microsoft.AspNetCore.Mvc.Analyzers.csproj | 2 +- .../Microsoft.AspNetCore.Mvc.Api.Analyzers.csproj | 2 +- .../Microsoft.AspNetCore.Mvc.Razor.csproj | 2 +- 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/Directory.Build.props b/Directory.Build.props index 065616f3cd..6c951ddaca 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -14,9 +14,6 @@ $(MSBuildThisFileDirectory) $(MSBuildThisFileDirectory)build\Key.snk true - Microsoft - MicrosoftNuGet - true true true diff --git a/src/Microsoft.AspNetCore.Mvc.Analyzers/Microsoft.AspNetCore.Mvc.Analyzers.csproj b/src/Microsoft.AspNetCore.Mvc.Analyzers/Microsoft.AspNetCore.Mvc.Analyzers.csproj index bfaa4f6135..3030951867 100644 --- a/src/Microsoft.AspNetCore.Mvc.Analyzers/Microsoft.AspNetCore.Mvc.Analyzers.csproj +++ b/src/Microsoft.AspNetCore.Mvc.Analyzers/Microsoft.AspNetCore.Mvc.Analyzers.csproj @@ -15,7 +15,7 @@ - + diff --git a/src/Microsoft.AspNetCore.Mvc.Api.Analyzers/Microsoft.AspNetCore.Mvc.Api.Analyzers.csproj b/src/Microsoft.AspNetCore.Mvc.Api.Analyzers/Microsoft.AspNetCore.Mvc.Api.Analyzers.csproj index a4c48adc4b..50b645a854 100644 --- a/src/Microsoft.AspNetCore.Mvc.Api.Analyzers/Microsoft.AspNetCore.Mvc.Api.Analyzers.csproj +++ b/src/Microsoft.AspNetCore.Mvc.Api.Analyzers/Microsoft.AspNetCore.Mvc.Api.Analyzers.csproj @@ -20,7 +20,7 @@ - + diff --git a/src/Microsoft.AspNetCore.Mvc.Razor/Microsoft.AspNetCore.Mvc.Razor.csproj b/src/Microsoft.AspNetCore.Mvc.Razor/Microsoft.AspNetCore.Mvc.Razor.csproj index decdf16adf..b63e6156e9 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor/Microsoft.AspNetCore.Mvc.Razor.csproj +++ b/src/Microsoft.AspNetCore.Mvc.Razor/Microsoft.AspNetCore.Mvc.Razor.csproj @@ -22,7 +22,7 @@ - +