44using Bogus ;
55using DotNetCoreDocs ;
66using DotNetCoreDocs . Writers ;
7- using JsonApiDotNetCore . Models ;
8- using JsonApiDotNetCore . Services ;
97using Microsoft . AspNetCore . Hosting ;
108using Microsoft . AspNetCore . TestHost ;
119using Xunit ;
@@ -56,91 +54,14 @@ public async Task NonJsonApiControllers_DoNotUse_Dasherized_Routes()
5654 Assert . Equal ( HttpStatusCode . OK , response . StatusCode ) ;
5755 }
5856
59- [ Fact ]
60- public async Task InheritedJsonApiControllers_Uses_Dasherized_Collection_Route ( )
61- {
62- // Arrange
63- var builder = new WebHostBuilder ( )
64- . UseStartup < Startup > ( ) ;
65- var httpMethod = new HttpMethod ( "GET" ) ;
66- var route = "/api/v1/todo-items-test" ;
67-
68- var server = new TestServer ( builder ) ;
69- var client = server . CreateClient ( ) ;
70- var request = new HttpRequestMessage ( httpMethod , route ) ;
71-
72- // act
73- var response = await client . SendAsync ( request ) ;
74-
75- // assert
76- Assert . Equal ( HttpStatusCode . OK , response . StatusCode ) ;
77- }
78-
79- [ Fact ]
80- public async Task InheritedJsonApiControllers_Uses_Dasherized_Item_Route ( )
81- {
82- // Arrange
83- var context = _fixture . GetService < AppDbContext > ( ) ;
84- var todoItem = _todoItemFaker . Generate ( ) ;
85- var person = _personFaker . Generate ( ) ;
86- todoItem . Owner = person ;
87- context . TodoItems . Add ( todoItem ) ;
88- await context . SaveChangesAsync ( ) ;
89-
90- var builder = new WebHostBuilder ( )
91- . UseStartup < Startup > ( ) ;
92- var httpMethod = new HttpMethod ( "GET" ) ;
93- var route = $ "/api/v1/todo-items-test/{ todoItem . Id } ";
94-
95- var server = new TestServer ( builder ) ;
96- var client = server . CreateClient ( ) ;
97- var request = new HttpRequestMessage ( httpMethod , route ) ;
98-
99- // act
100- var response = await client . SendAsync ( request ) ;
101-
102- // assert
103- Assert . Equal ( HttpStatusCode . OK , response . StatusCode ) ;
104- }
105-
106- [ Fact ]
107- public async Task InheritedJsonApiControllers_Creates_Proper_Relationship_Links ( )
108- {
109- // Arrange
110- var context = _fixture . GetService < AppDbContext > ( ) ;
111- var todoItem = _todoItemFaker . Generate ( ) ;
112- var person = _personFaker . Generate ( ) ;
113- todoItem . Owner = person ;
114- context . TodoItems . Add ( todoItem ) ;
115- await context . SaveChangesAsync ( ) ;
116-
117- var builder = new WebHostBuilder ( )
118- . UseStartup < Startup > ( ) ;
119- var httpMethod = new HttpMethod ( "GET" ) ;
120- var route = $ "/api/v1/todo-items-test/{ todoItem . Id } ";
121-
122- var server = new TestServer ( builder ) ;
123- var client = server . CreateClient ( ) ;
124- var request = new HttpRequestMessage ( httpMethod , route ) ;
125-
126- // act & assert
127- var response = await client . SendAsync ( request ) ;
128- Assert . Equal ( HttpStatusCode . OK , response . StatusCode ) ;
129-
130- var body = await response . Content . ReadAsStringAsync ( ) ;
131- var deserializedBody = JsonConvert . DeserializeObject < JObject > ( body ) ;
132-
133- Assert . EndsWith ( $ "{ route } /owner", deserializedBody [ "data" ] [ "relationships" ] [ "owner" ] [ "links" ] [ "related" ] . ToString ( ) ) ;
134- }
135-
13657 [ Fact ]
13758 public async Task CustomRouteControllers_Uses_Dasherized_Collection_Route ( )
13859 {
13960 // Arrange
14061 var builder = new WebHostBuilder ( )
14162 . UseStartup < Startup > ( ) ;
14263 var httpMethod = new HttpMethod ( "GET" ) ;
143- var route = $ "/custom/route/todoitems ";
64+ var route = $ "/custom/route/todo-items ";
14465
14566 var server = new TestServer ( builder ) ;
14667 var client = server . CreateClient ( ) ;
@@ -167,7 +88,7 @@ public async Task CustomRouteControllers_Uses_Dasherized_Item_Route()
16788 var builder = new WebHostBuilder ( )
16889 . UseStartup < Startup > ( ) ;
16990 var httpMethod = new HttpMethod ( "GET" ) ;
170- var route = $ "/custom/route/todoitems /{ todoItem . Id } ";
91+ var route = $ "/custom/route/todo-items /{ todoItem . Id } ";
17192
17293 var server = new TestServer ( builder ) ;
17394 var client = server . CreateClient ( ) ;
@@ -194,7 +115,7 @@ public async Task CustomRouteControllers_Creates_Proper_Relationship_Links()
194115 var builder = new WebHostBuilder ( )
195116 . UseStartup < Startup > ( ) ;
196117 var httpMethod = new HttpMethod ( "GET" ) ;
197- var route = $ "/custom/route/todoitems /{ todoItem . Id } ";
118+ var route = $ "/custom/route/todo-items /{ todoItem . Id } ";
198119
199120 var server = new TestServer ( builder ) ;
200121 var client = server . CreateClient ( ) ;
@@ -207,6 +128,7 @@ public async Task CustomRouteControllers_Creates_Proper_Relationship_Links()
207128 var body = await response . Content . ReadAsStringAsync ( ) ;
208129 var deserializedBody = JsonConvert . DeserializeObject < JObject > ( body ) ;
209130
131+ var result = deserializedBody [ "data" ] [ "relationships" ] [ "owner" ] [ "links" ] [ "related" ] . ToString ( ) ;
210132 Assert . EndsWith ( $ "{ route } /owner", deserializedBody [ "data" ] [ "relationships" ] [ "owner" ] [ "links" ] [ "related" ] . ToString ( ) ) ;
211133 }
212134 }
0 commit comments