Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/aspnetcore.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/Http/Http.Results/test/ObjectResultTests.cs')
-rw-r--r--src/Http/Http.Results/test/ObjectResultTests.cs295
1 files changed, 147 insertions, 148 deletions
diff --git a/src/Http/Http.Results/test/ObjectResultTests.cs b/src/Http/Http.Results/test/ObjectResultTests.cs
index 849708dc33..59160a9dcb 100644
--- a/src/Http/Http.Results/test/ObjectResultTests.cs
+++ b/src/Http/Http.Results/test/ObjectResultTests.cs
@@ -10,195 +10,194 @@ using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;
using Xunit;
-namespace Microsoft.AspNetCore.Http.Result
+namespace Microsoft.AspNetCore.Http.Result;
+
+public class ObjectResultTests
{
- public class ObjectResultTests
+ [Fact]
+ public async Task ObjectResult_ExecuteAsync_WithNullValue_Works()
{
- [Fact]
- public async Task ObjectResult_ExecuteAsync_WithNullValue_Works()
+ // Arrange
+ var result = new ObjectResult(value: null, 411);
+
+ var httpContext = new DefaultHttpContext()
{
- // Arrange
- var result = new ObjectResult(value: null, 411);
+ RequestServices = CreateServices(),
+ };
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- };
+ // Act
+ await result.ExecuteAsync(httpContext);
- // Act
- await result.ExecuteAsync(httpContext);
+ // Assert
+ Assert.Equal(411, httpContext.Response.StatusCode);
+ }
- // Assert
- Assert.Equal(411, httpContext.Response.StatusCode);
- }
+ [Fact]
+ public async Task ObjectResult_ExecuteAsync_SetsStatusCode()
+ {
+ // Arrange
+ var result = new ObjectResult("Hello", 407);
- [Fact]
- public async Task ObjectResult_ExecuteAsync_SetsStatusCode()
+ var httpContext = new DefaultHttpContext()
{
- // Arrange
- var result = new ObjectResult("Hello", 407);
+ RequestServices = CreateServices(),
+ };
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- };
+ // Act
+ await result.ExecuteAsync(httpContext);
- // Act
- await result.ExecuteAsync(httpContext);
-
- // Assert
- Assert.Equal(407, httpContext.Response.StatusCode);
- }
+ // Assert
+ Assert.Equal(407, httpContext.Response.StatusCode);
+ }
- [Fact]
- public async Task ObjectResult_ExecuteAsync_JsonSerializesBody()
+ [Fact]
+ public async Task ObjectResult_ExecuteAsync_JsonSerializesBody()
+ {
+ // Arrange
+ var result = new ObjectResult("Hello", 407);
+ var stream = new MemoryStream();
+ var httpContext = new DefaultHttpContext()
{
- // Arrange
- var result = new ObjectResult("Hello", 407);
- var stream = new MemoryStream();
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- Response =
+ RequestServices = CreateServices(),
+ Response =
{
Body = stream,
},
- };
+ };
- // Act
- await result.ExecuteAsync(httpContext);
+ // Act
+ await result.ExecuteAsync(httpContext);
- // Assert
- Assert.Equal("\"Hello\"", Encoding.UTF8.GetString(stream.ToArray()));
- }
+ // Assert
+ Assert.Equal("\"Hello\"", Encoding.UTF8.GetString(stream.ToArray()));
+ }
+
+ [Fact]
+ public async Task ExecuteAsync_UsesDefaults_ForProblemDetails()
+ {
+ // Arrange
+ var details = new ProblemDetails();
- [Fact]
- public async Task ExecuteAsync_UsesDefaults_ForProblemDetails()
+ var result = new ObjectResult(details);
+ var stream = new MemoryStream();
+ var httpContext = new DefaultHttpContext()
{
- // Arrange
- var details = new ProblemDetails();
-
- var result = new ObjectResult(details);
- var stream = new MemoryStream();
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- Response =
+ RequestServices = CreateServices(),
+ Response =
{
Body = stream,
},
- };
-
- // Act
- await result.ExecuteAsync(httpContext);
-
- // Assert
- Assert.Equal(StatusCodes.Status500InternalServerError, httpContext.Response.StatusCode);
- stream.Position = 0;
- var responseDetails = JsonSerializer.Deserialize<ProblemDetails>(stream);
- Assert.Equal("https://tools.ietf.org/html/rfc7231#section-6.6.1", responseDetails.Type);
- Assert.Equal("An error occurred while processing your request.", responseDetails.Title);
- Assert.Equal(StatusCodes.Status500InternalServerError, responseDetails.Status);
- }
-
- [Fact]
- public async Task ExecuteAsync_UsesDefaults_ForValidationProblemDetails()
+ };
+
+ // Act
+ await result.ExecuteAsync(httpContext);
+
+ // Assert
+ Assert.Equal(StatusCodes.Status500InternalServerError, httpContext.Response.StatusCode);
+ stream.Position = 0;
+ var responseDetails = JsonSerializer.Deserialize<ProblemDetails>(stream);
+ Assert.Equal("https://tools.ietf.org/html/rfc7231#section-6.6.1", responseDetails.Type);
+ Assert.Equal("An error occurred while processing your request.", responseDetails.Title);
+ Assert.Equal(StatusCodes.Status500InternalServerError, responseDetails.Status);
+ }
+
+ [Fact]
+ public async Task ExecuteAsync_UsesDefaults_ForValidationProblemDetails()
+ {
+ // Arrange
+ var details = new HttpValidationProblemDetails();
+
+ var result = new ObjectResult(details);
+ var stream = new MemoryStream();
+ var httpContext = new DefaultHttpContext()
{
- // Arrange
- var details = new HttpValidationProblemDetails();
-
- var result = new ObjectResult(details);
- var stream = new MemoryStream();
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- Response =
+ RequestServices = CreateServices(),
+ Response =
{
Body = stream,
},
- };
-
- // Act
- await result.ExecuteAsync(httpContext);
-
- // Assert
- Assert.Equal(StatusCodes.Status400BadRequest, httpContext.Response.StatusCode);
- stream.Position = 0;
- var responseDetails = JsonSerializer.Deserialize<HttpValidationProblemDetails>(stream);
- Assert.Equal("https://tools.ietf.org/html/rfc7231#section-6.5.1", responseDetails.Type);
- Assert.Equal("One or more validation errors occurred.", responseDetails.Title);
- Assert.Equal(StatusCodes.Status400BadRequest, responseDetails.Status);
- }
-
- [Fact]
- public async Task ExecuteAsync_SetsProblemDetailsStatus_ForValidationProblemDetails()
- {
- // Arrange
- var details = new HttpValidationProblemDetails();
-
- var result = new ObjectResult(details, StatusCodes.Status422UnprocessableEntity);
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- };
-
- // Act
- await result.ExecuteAsync(httpContext);
+ };
+
+ // Act
+ await result.ExecuteAsync(httpContext);
+
+ // Assert
+ Assert.Equal(StatusCodes.Status400BadRequest, httpContext.Response.StatusCode);
+ stream.Position = 0;
+ var responseDetails = JsonSerializer.Deserialize<HttpValidationProblemDetails>(stream);
+ Assert.Equal("https://tools.ietf.org/html/rfc7231#section-6.5.1", responseDetails.Type);
+ Assert.Equal("One or more validation errors occurred.", responseDetails.Title);
+ Assert.Equal(StatusCodes.Status400BadRequest, responseDetails.Status);
+ }
- // Assert
- Assert.Equal(StatusCodes.Status422UnprocessableEntity, details.Status.Value);
- }
+ [Fact]
+ public async Task ExecuteAsync_SetsProblemDetailsStatus_ForValidationProblemDetails()
+ {
+ // Arrange
+ var details = new HttpValidationProblemDetails();
- [Fact]
- public async Task ExecuteAsync_GetsStatusCodeFromProblemDetails()
+ var result = new ObjectResult(details, StatusCodes.Status422UnprocessableEntity);
+ var httpContext = new DefaultHttpContext()
{
- // Arrange
- var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, };
+ RequestServices = CreateServices(),
+ };
- var result = new ObjectResult(details);
+ // Act
+ await result.ExecuteAsync(httpContext);
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- };
+ // Assert
+ Assert.Equal(StatusCodes.Status422UnprocessableEntity, details.Status.Value);
+ }
- // Act
- await result.ExecuteAsync(httpContext);
+ [Fact]
+ public async Task ExecuteAsync_GetsStatusCodeFromProblemDetails()
+ {
+ // Arrange
+ var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, };
- // Assert
- Assert.Equal(StatusCodes.Status413RequestEntityTooLarge, details.Status.Value);
- Assert.Equal(StatusCodes.Status413RequestEntityTooLarge, result.StatusCode.Value);
- Assert.Equal(StatusCodes.Status413RequestEntityTooLarge, httpContext.Response.StatusCode);
- }
+ var result = new ObjectResult(details);
- [Fact]
- public async Task ExecuteAsync_UsesStatusCodeFromResultTypeForProblemDetails()
+ var httpContext = new DefaultHttpContext()
{
- // Arrange
- var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, };
+ RequestServices = CreateServices(),
+ };
- var result = new BadRequestObjectResult(details);
+ // Act
+ await result.ExecuteAsync(httpContext);
- var httpContext = new DefaultHttpContext()
- {
- RequestServices = CreateServices(),
- };
+ // Assert
+ Assert.Equal(StatusCodes.Status413RequestEntityTooLarge, details.Status.Value);
+ Assert.Equal(StatusCodes.Status413RequestEntityTooLarge, result.StatusCode.Value);
+ Assert.Equal(StatusCodes.Status413RequestEntityTooLarge, httpContext.Response.StatusCode);
+ }
- // Act
- await result.ExecuteAsync(httpContext);
+ [Fact]
+ public async Task ExecuteAsync_UsesStatusCodeFromResultTypeForProblemDetails()
+ {
+ // Arrange
+ var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, };
- // Assert
- Assert.Equal(StatusCodes.Status422UnprocessableEntity, details.Status.Value);
- Assert.Equal(StatusCodes.Status400BadRequest, result.StatusCode.Value);
- Assert.Equal(StatusCodes.Status400BadRequest, httpContext.Response.StatusCode);
- }
+ var result = new BadRequestObjectResult(details);
- private static IServiceProvider CreateServices()
+ var httpContext = new DefaultHttpContext()
{
- var services = new ServiceCollection();
- services.AddSingleton<ILoggerFactory>(NullLoggerFactory.Instance);
+ RequestServices = CreateServices(),
+ };
+
+ // Act
+ await result.ExecuteAsync(httpContext);
+
+ // Assert
+ Assert.Equal(StatusCodes.Status422UnprocessableEntity, details.Status.Value);
+ Assert.Equal(StatusCodes.Status400BadRequest, result.StatusCode.Value);
+ Assert.Equal(StatusCodes.Status400BadRequest, httpContext.Response.StatusCode);
+ }
+
+ private static IServiceProvider CreateServices()
+ {
+ var services = new ServiceCollection();
+ services.AddSingleton<ILoggerFactory>(NullLoggerFactory.Instance);
- return services.BuildServiceProvider();
- }
+ return services.BuildServiceProvider();
}
}