|
13 | 13 | using JsonApiDotNetCore.Serialization; |
14 | 14 | using System.Linq; |
15 | 15 | using Person = JsonApiDotNetCoreExample.Models.Person; |
| 16 | +using Newtonsoft.Json; |
| 17 | +using JsonApiDotNetCore.Models; |
16 | 18 |
|
17 | 19 | namespace JsonApiDotNetCoreExampleTests.Acceptance.Spec |
18 | 20 | { |
@@ -82,23 +84,23 @@ public async Task Can_Filter_On_Related_Attrs() |
82 | 84 | var builder = new WebHostBuilder() |
83 | 85 | .UseStartup<Startup>(); |
84 | 86 | var httpMethod = new HttpMethod("GET"); |
85 | | - var route = $"/api/v1/todo-items?include[owner]&filter[owner.first-name]={person.FirstName}"; |
| 87 | + var route = $"/api/v1/todo-items?include=owner&filter[owner.first-name]={person.FirstName}"; |
86 | 88 | var server = new TestServer(builder); |
87 | 89 | var client = server.CreateClient(); |
88 | 90 | var request = new HttpRequestMessage(httpMethod, route); |
89 | 91 |
|
90 | 92 | // act |
91 | 93 | var response = await client.SendAsync(request); |
92 | 94 | var body = await response.Content.ReadAsStringAsync(); |
93 | | - var deserializedBody = _fixture |
94 | | - .GetService<IJsonApiDeSerializer>() |
95 | | - .DeserializeList<TodoItem>(body); |
| 95 | + var documents = JsonConvert.DeserializeObject<Documents>(await response.Content.ReadAsStringAsync()); |
| 96 | + var included = documents.Included; |
96 | 97 |
|
97 | 98 | // assert |
98 | 99 | Assert.Equal(HttpStatusCode.OK, response.StatusCode); |
99 | | - Assert.NotEmpty(deserializedBody); |
100 | | - foreach(var item in deserializedBody) |
101 | | - Assert.Equal(person.FirstName, item.Owner.FirstName); |
| 100 | + Assert.NotNull(included); |
| 101 | + Assert.NotEmpty(included); |
| 102 | + foreach(var item in included) |
| 103 | + Assert.Equal(person.FirstName, item.Attributes["first-name"]); |
102 | 104 | } |
103 | 105 | } |
104 | 106 | } |
0 commit comments