Skip to content

Commit 05b4ba5

Browse files
committed
Address PR comments
1 parent 5cabf90 commit 05b4ba5

File tree

11 files changed

+574
-572
lines changed

11 files changed

+574
-572
lines changed

test/OpenApiEndToEndTests/ClientGeneratedId/PostTests.cs renamed to test/OpenApiEndToEndTests/ClientIdGenerationModes/PostTests.cs

Lines changed: 34 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,36 +2,36 @@
22
using FluentAssertions.Specialized;
33
using JsonApiDotNetCore.OpenApi.Client;
44
using Newtonsoft.Json;
5-
using OpenApiEndToEndTests.ClientGeneratedId.GeneratedCode;
5+
using OpenApiEndToEndTests.ClientIdGenerationModes.GeneratedCode;
66
using OpenApiTests;
7-
using OpenApiTests.ClientGeneratedId;
7+
using OpenApiTests.ClientIdGenerationModes;
88
using TestBuildingBlocks;
99
using Xunit;
1010

11-
namespace OpenApiEndToEndTests.ClientGeneratedId;
11+
namespace OpenApiEndToEndTests.ClientIdGenerationModes;
1212

13-
public sealed class PostTests : IClassFixture<IntegrationTestContext<OpenApiStartup<ClientGeneratedIdDbContext>, ClientGeneratedIdDbContext>>
13+
public sealed class PostTests : IClassFixture<IntegrationTestContext<OpenApiStartup<ClientIdGenerationModesDbContext>, ClientIdGenerationModesDbContext>>
1414
{
15-
private readonly IntegrationTestContext<OpenApiStartup<ClientGeneratedIdDbContext>, ClientGeneratedIdDbContext> _testContext;
16-
private readonly ClientGeneratedIdFakers _fakers = new();
15+
private readonly IntegrationTestContext<OpenApiStartup<ClientIdGenerationModesDbContext>, ClientIdGenerationModesDbContext> _testContext;
16+
private readonly ClientIdGenerationModesFakers _fakers = new();
1717

18-
public PostTests(IntegrationTestContext<OpenApiStartup<ClientGeneratedIdDbContext>, ClientGeneratedIdDbContext> testContext)
18+
public PostTests(IntegrationTestContext<OpenApiStartup<ClientIdGenerationModesDbContext>, ClientIdGenerationModesDbContext> testContext)
1919
{
2020
_testContext = testContext;
2121

2222
testContext.UseController<PlayersController>();
2323
testContext.UseController<GamesController>();
24-
testContext.UseController<GroupsController>();
24+
testContext.UseController<PlayerGroupsController>();
2525
}
2626

2727
[Fact]
28-
public async Task Omit_required_id()
28+
public async Task Cannot_create_resource_without_ID_when_mode_is_required()
2929
{
3030
// Arrange
3131
Player player = _fakers.Player.Generate();
3232

3333
using HttpClient httpClient = _testContext.Factory.CreateClient();
34-
ClientGeneratedIdClient apiClient = new(httpClient);
34+
ClientIdGenerationModesClient apiClient = new(httpClient);
3535

3636
// Act
3737
Func<Task<PlayerPrimaryResponseDocument?>> action = () => ApiResponse.TranslateAsync(() => apiClient.PostPlayerAsync(null, new PlayerPostRequestDocument
@@ -41,7 +41,7 @@ public async Task Omit_required_id()
4141
Id = null!,
4242
Attributes = new PlayerAttributesInPostRequest
4343
{
44-
Name = player.Name
44+
UserName = player.UserName
4545
}
4646
}
4747
}));
@@ -52,14 +52,14 @@ public async Task Omit_required_id()
5252
}
5353

5454
[Fact]
55-
public async Task Pass_required_id()
55+
public async Task Can_create_resource_with_ID_when_mode_is_required()
5656
{
5757
// Arrange
5858
Player player = _fakers.Player.Generate();
5959
player.Id = Guid.NewGuid();
6060

6161
using HttpClient httpClient = _testContext.Factory.CreateClient();
62-
ClientGeneratedIdClient apiClient = new(httpClient);
62+
ClientIdGenerationModesClient apiClient = new(httpClient);
6363

6464
// Act
6565
Func<Task<PlayerPrimaryResponseDocument?>> action = () => ApiResponse.TranslateAsync(() => apiClient.PostPlayerAsync(null, new PlayerPostRequestDocument
@@ -69,7 +69,7 @@ public async Task Pass_required_id()
6969
Id = player.StringId!,
7070
Attributes = new PlayerAttributesInPostRequest
7171
{
72-
Name = player.Name
72+
UserName = player.UserName
7373
}
7474
}
7575
}));
@@ -80,13 +80,13 @@ public async Task Pass_required_id()
8080
}
8181

8282
[Fact]
83-
public async Task Omit_allowed_id()
83+
public async Task Can_create_resource_without_ID_when_mode_is_allowed()
8484
{
8585
// Arrange
8686
Game game = _fakers.Game.Generate();
8787

8888
using HttpClient httpClient = _testContext.Factory.CreateClient();
89-
ClientGeneratedIdClient apiClient = new(httpClient);
89+
ClientIdGenerationModesClient apiClient = new(httpClient);
9090

9191
// Act
9292
Func<Task<GamePrimaryResponseDocument?>> action = () => ApiResponse.TranslateAsync(() => apiClient.PostGameAsync(null, new GamePostRequestDocument
@@ -96,8 +96,8 @@ public async Task Omit_allowed_id()
9696
Id = null!,
9797
Attributes = new GameAttributesInPostRequest
9898
{
99-
Name = game.Name,
100-
Price = (double)game.Price
99+
Title = game.Title,
100+
PurchasePrice = (double)game.PurchasePrice
101101
}
102102
}
103103
}));
@@ -108,14 +108,14 @@ public async Task Omit_allowed_id()
108108
}
109109

110110
[Fact]
111-
public async Task Pass_allowed_id()
111+
public async Task Can_create_resource_with_ID_when_mode_is_allowed()
112112
{
113113
// Arrange
114114
Game game = _fakers.Game.Generate();
115115
game.Id = Guid.NewGuid();
116116

117117
using HttpClient httpClient = _testContext.Factory.CreateClient();
118-
ClientGeneratedIdClient apiClient = new(httpClient);
118+
ClientIdGenerationModesClient apiClient = new(httpClient);
119119

120120
// Act
121121
Func<Task<GamePrimaryResponseDocument?>> action = () => ApiResponse.TranslateAsync(() => apiClient.PostGameAsync(null, new GamePostRequestDocument
@@ -125,8 +125,8 @@ public async Task Pass_allowed_id()
125125
Id = game.StringId!,
126126
Attributes = new GameAttributesInPostRequest
127127
{
128-
Name = game.Name,
129-
Price = (double)game.Price
128+
Title = game.Title,
129+
PurchasePrice = (double)game.PurchasePrice
130130
}
131131
}
132132
}));
@@ -137,28 +137,29 @@ public async Task Pass_allowed_id()
137137
}
138138

139139
[Fact]
140-
public async Task Omit_forbidden_id()
140+
public async Task Can_create_resource_without_ID_when_mode_is_forbidden()
141141
{
142142
// Arrange
143-
Group group = _fakers.Group.Generate();
143+
PlayerGroup playerGroup = _fakers.Group.Generate();
144144

145145
using HttpClient httpClient = _testContext.Factory.CreateClient();
146-
ClientGeneratedIdClient apiClient = new(httpClient);
146+
ClientIdGenerationModesClient apiClient = new(httpClient);
147147

148148
// Act
149-
Func<Task<GroupPrimaryResponseDocument?>> action = () => ApiResponse.TranslateAsync(() => apiClient.PostGroupAsync(null, new GroupPostRequestDocument
150-
{
151-
Data = new GroupDataInPostRequest
149+
Func<Task<PlayerGroupPrimaryResponseDocument?>> action = () => ApiResponse.TranslateAsync(() => apiClient.PostPlayerGroupAsync(null,
150+
new PlayerGroupPostRequestDocument
152151
{
153-
Attributes = new GroupAttributesInPostRequest
152+
Data = new PlayerGroupDataInPostRequest
154153
{
155-
Name = group.Name
154+
Attributes = new PlayerGroupAttributesInPostRequest
155+
{
156+
Name = playerGroup.Name
157+
}
156158
}
157-
}
158-
}));
159+
}));
159160

160161
// Assert
161-
GroupPrimaryResponseDocument? doc = (await action.Should().NotThrowAsync()).Subject;
162+
PlayerGroupPrimaryResponseDocument? doc = (await action.Should().NotThrowAsync()).Subject;
162163
doc?.Data.Id.Should().NotBeNullOrEmpty();
163164
}
164165
}

0 commit comments

Comments
 (0)