|
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