|
7 | 7 | using JsonApiDotNetCore.Routing;
|
8 | 8 | using JsonApiDotNetCore.Controllers;
|
9 | 9 | using Microsoft.AspNetCore.Mvc;
|
10 |
| -using System.Text; |
11 |
| -using System.Threading; |
12 |
| -using System.Threading.Tasks; |
13 |
| -using Microsoft.AspNetCore.Http.Internal; |
14 | 10 | using System.IO;
|
15 | 11 |
|
16 | 12 | namespace JsonApiDotNetCoreTests.Routing.UnitTests
|
17 | 13 | {
|
18 | 14 | public class RouterTests
|
19 | 15 | {
|
20 | 16 | [Fact]
|
21 |
| - public void HandleJsonApiRoute_ReturnsFalse_IfTheRouteCannotBeBuilt() |
| 17 | + public async void HandleJsonApiRoute_ReturnsFalse_IfTheRouteCannotBeBuilt() |
22 | 18 | {
|
23 |
| - //--> arrange |
24 |
| - var httpContextMock = new Mock<HttpContext>(); |
25 |
| - httpContextMock.SetupAllProperties(); |
| 19 | + //--> arrange |
| 20 | + var httpContextMock = new Mock<HttpContext>(); |
| 21 | + httpContextMock.SetupAllProperties(); |
26 | 22 |
|
27 |
| - // since this is an empty stub, IRouteBuilder.BuildFromRequest() will always return null |
28 |
| - var routeBuilderMock = new Mock<IRouteBuilder>(); |
| 23 | + // since this is an empty stub, IRouteBuilder.BuildFromRequest() will always return null |
| 24 | + var routeBuilderMock = new Mock<IRouteBuilder>(); |
29 | 25 |
|
30 |
| - var router = new Router(null, routeBuilderMock.Object, null); |
| 26 | + var router = new Router(null, routeBuilderMock.Object, null); |
31 | 27 |
|
32 |
| - //--> act |
33 |
| - var result = router.HandleJsonApiRoute(httpContextMock.Object, null); |
| 28 | + //--> act |
| 29 | + var result = await router.HandleJsonApiRouteAsync(httpContextMock.Object, null); |
34 | 30 |
|
35 |
| - //--> assert |
36 |
| - Assert.False(result); |
| 31 | + //--> assert |
| 32 | + Assert.False(result); |
37 | 33 | }
|
38 | 34 |
|
39 | 35 | [Fact]
|
40 |
| - public void HandleJsonApiRoute_CallsGetMethod_ForGetRequest() |
| 36 | + public async void HandleJsonApiRoute_CallsGetMethod_ForGetRequest() |
41 | 37 | {
|
42 |
| - //--> arrange |
43 |
| - var httpContextMock = new Mock<HttpContext>(); |
44 |
| - httpContextMock.SetupAllProperties(); |
45 |
| - var httpResponseMock = new Mock<HttpResponse>(); |
46 |
| - httpResponseMock.Setup(r => r.Body).Returns(new MemoryStream()); |
47 |
| - httpContextMock.Setup(c => c.Response).Returns(httpResponseMock.Object); |
| 38 | + //--> arrange |
| 39 | + var httpContextMock = new Mock<HttpContext>(); |
| 40 | + httpContextMock.SetupAllProperties(); |
| 41 | + var httpResponseMock = new Mock<HttpResponse>(); |
| 42 | + httpResponseMock.Setup(r => r.Body).Returns(new MemoryStream()); |
| 43 | + httpContextMock.Setup(c => c.Response).Returns(httpResponseMock.Object); |
48 | 44 |
|
49 |
| - var route = new Route(null, "GET", null, null, null); |
| 45 | + var route = new Route(null, "GET", null, null, null); |
50 | 46 |
|
51 |
| - var routeBuilderMock = new Mock<IRouteBuilder>(); |
52 |
| - routeBuilderMock.Setup(rb => rb.BuildFromRequest(null)).Returns(route); |
| 47 | + var routeBuilderMock = new Mock<IRouteBuilder>(); |
| 48 | + routeBuilderMock.Setup(rb => rb.BuildFromRequest(null)).Returns(route); |
53 | 49 |
|
54 |
| - var serviceProviderMock = new Mock<IServiceProvider>(); |
| 50 | + var serviceProviderMock = new Mock<IServiceProvider>(); |
55 | 51 |
|
56 |
| - var controllerMock = new Mock<IJsonApiController>(); |
57 |
| - controllerMock.Setup(c => c.Get()).Returns(new OkObjectResult(null)); |
58 |
| - var controllerBuilder = new Mock<IControllerBuilder>(); |
59 |
| - controllerBuilder.Setup(cb => cb.BuildController(It.IsAny<JsonApiContext>())).Returns(controllerMock.Object); |
| 52 | + var controllerMock = new Mock<IJsonApiController>(); |
| 53 | + controllerMock.Setup(c => c.Get()).Returns(new OkObjectResult(null)); |
| 54 | + var controllerBuilder = new Mock<IControllerBuilder>(); |
| 55 | + controllerBuilder.Setup(cb => cb.BuildController(It.IsAny<JsonApiContext>())).Returns(controllerMock.Object); |
60 | 56 |
|
61 |
| - var router = new Router(new JsonApiModelConfiguration(), routeBuilderMock.Object, controllerBuilder.Object); |
| 57 | + var router = new Router(new JsonApiModelConfiguration(), routeBuilderMock.Object, controllerBuilder.Object); |
62 | 58 |
|
63 |
| - //--> act |
64 |
| - var result = router.HandleJsonApiRoute(httpContextMock.Object, serviceProviderMock.Object); |
| 59 | + //--> act |
| 60 | + var result = await router.HandleJsonApiRouteAsync(httpContextMock.Object, serviceProviderMock.Object); |
65 | 61 |
|
66 |
| - //--> assert |
67 |
| - Assert.True(result); |
68 |
| - controllerMock.Verify(c => c.Get()); |
| 62 | + //--> assert |
| 63 | + Assert.True(result); |
| 64 | + controllerMock.Verify(c => c.Get()); |
69 | 65 | }
|
70 | 66 |
|
71 | 67 | [Fact]
|
72 |
| - public void HandleJsonApiRoute_CallsGetIdMethod_ForGetIdRequest() |
| 68 | + public async void HandleJsonApiRoute_CallsGetIdMethod_ForGetIdRequest() |
73 | 69 | {
|
74 |
| - //--> arrange |
75 |
| - const string resourceId = "1"; |
76 |
| - var httpContextMock = new Mock<HttpContext>(); |
77 |
| - httpContextMock.SetupAllProperties(); |
78 |
| - var httpResponseMock = new Mock<HttpResponse>(); |
79 |
| - httpResponseMock.Setup(r => r.Body).Returns(new MemoryStream()); |
80 |
| - httpContextMock.Setup(c => c.Response).Returns(httpResponseMock.Object); |
| 70 | + //--> arrange |
| 71 | + const string resourceId = "1"; |
| 72 | + var httpContextMock = new Mock<HttpContext>(); |
| 73 | + httpContextMock.SetupAllProperties(); |
| 74 | + var httpResponseMock = new Mock<HttpResponse>(); |
| 75 | + httpResponseMock.Setup(r => r.Body).Returns(new MemoryStream()); |
| 76 | + httpContextMock.Setup(c => c.Response).Returns(httpResponseMock.Object); |
81 | 77 |
|
82 |
| - var route = new Route(null, "GET", resourceId, null, null); |
| 78 | + var route = new Route(null, "GET", resourceId, null, null); |
83 | 79 |
|
84 |
| - var routeBuilderMock = new Mock<IRouteBuilder>(); |
85 |
| - routeBuilderMock.Setup(rb => rb.BuildFromRequest(null)).Returns(route); |
| 80 | + var routeBuilderMock = new Mock<IRouteBuilder>(); |
| 81 | + routeBuilderMock.Setup(rb => rb.BuildFromRequest(null)).Returns(route); |
86 | 82 |
|
87 |
| - var serviceProviderMock = new Mock<IServiceProvider>(); |
| 83 | + var serviceProviderMock = new Mock<IServiceProvider>(); |
88 | 84 |
|
89 |
| - var controllerMock = new Mock<IJsonApiController>(); |
90 |
| - controllerMock.Setup(c => c.Get(resourceId)).Returns(new OkObjectResult(null)); |
91 |
| - var controllerBuilder = new Mock<IControllerBuilder>(); |
92 |
| - controllerBuilder.Setup(cb => cb.BuildController(It.IsAny<JsonApiContext>())).Returns(controllerMock.Object); |
| 85 | + var controllerMock = new Mock<IJsonApiController>(); |
| 86 | + controllerMock.Setup(c => c.Get(resourceId)).Returns(new OkObjectResult(null)); |
| 87 | + var controllerBuilder = new Mock<IControllerBuilder>(); |
| 88 | + controllerBuilder.Setup(cb => cb.BuildController(It.IsAny<JsonApiContext>())).Returns(controllerMock.Object); |
93 | 89 |
|
94 |
| - var router = new Router(new JsonApiModelConfiguration(), routeBuilderMock.Object, controllerBuilder.Object); |
| 90 | + var router = new Router(new JsonApiModelConfiguration(), routeBuilderMock.Object, controllerBuilder.Object); |
95 | 91 |
|
96 |
| - //--> act |
97 |
| - var result = router.HandleJsonApiRoute(httpContextMock.Object, serviceProviderMock.Object); |
| 92 | + //--> act |
| 93 | + var result = await router.HandleJsonApiRouteAsync(httpContextMock.Object, serviceProviderMock.Object); |
98 | 94 |
|
99 |
| - //--> assert |
100 |
| - Assert.True(result); |
101 |
| - controllerMock.Verify(c => c.Get(resourceId)); |
| 95 | + //--> assert |
| 96 | + Assert.True(result); |
| 97 | + controllerMock.Verify(c => c.Get(resourceId)); |
102 | 98 | }
|
103 | 99 | }
|
104 | 100 | }
|
0 commit comments