diff options
author | crupest <crupest@outlook.com> | 2020-11-15 02:34:31 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-11-15 02:34:31 +0800 |
commit | 273501df14426d7c3772451f89b85d4b9ca40ec3 (patch) | |
tree | be4d6feb4bbb4547a58a8a44bc7aed5c916367af /BackEnd/Timeline.Tests/IntegratedTests/TokenTest.cs | |
parent | 20912751c5e1ce6ccbc3258cd5330cd8cfeac058 (diff) | |
download | timeline-273501df14426d7c3772451f89b85d4b9ca40ec3.tar.gz timeline-273501df14426d7c3772451f89b85d4b9ca40ec3.tar.bz2 timeline-273501df14426d7c3772451f89b85d4b9ca40ec3.zip |
...
Diffstat (limited to 'BackEnd/Timeline.Tests/IntegratedTests/TokenTest.cs')
-rw-r--r-- | BackEnd/Timeline.Tests/IntegratedTests/TokenTest.cs | 57 |
1 files changed, 21 insertions, 36 deletions
diff --git a/BackEnd/Timeline.Tests/IntegratedTests/TokenTest.cs b/BackEnd/Timeline.Tests/IntegratedTests/TokenTest.cs index 9aac8188..3c4a595d 100644 --- a/BackEnd/Timeline.Tests/IntegratedTests/TokenTest.cs +++ b/BackEnd/Timeline.Tests/IntegratedTests/TokenTest.cs @@ -17,12 +17,10 @@ namespace Timeline.Tests.IntegratedTests private static async Task<CreateTokenResponse> CreateUserTokenAsync(HttpClient client, string username, string password, int? expireOffset = null)
{
- var response = await client.PostAsJsonAsync(CreateTokenUrl, new CreateTokenRequest { Username = username, Password = password, Expire = expireOffset });
- return response.Should().HaveStatusCode(200)
- .And.HaveJsonBody<CreateTokenResponse>().Which;
+ return await client.TestPostAsync<CreateTokenResponse>(CreateTokenUrl, new CreateTokenRequest { Username = username, Password = password, Expire = expireOffset });
}
- public static IEnumerable<object[]> CreateToken_InvalidModel_Data()
+ public static IEnumerable<object?[]> CreateToken_InvalidModel_Data()
{
yield return new[] { null, "p", null };
yield return new[] { "u", null, null };
@@ -35,12 +33,12 @@ namespace Timeline.Tests.IntegratedTests public async Task CreateToken_InvalidModel(string username, string password, int expire)
{
using var client = await CreateDefaultClient();
- (await client.PostAsJsonAsync(CreateTokenUrl, new CreateTokenRequest
+ await client.TestPostAssertInvalidModelAsync(CreateTokenUrl, new CreateTokenRequest
{
Username = username,
Password = password,
Expire = expire
- })).Should().BeInvalidModel();
+ });
}
public static IEnumerable<object[]> CreateToken_UserCredential_Data()
@@ -54,42 +52,35 @@ namespace Timeline.Tests.IntegratedTests public async void CreateToken_UserCredential(string username, string password)
{
using var client = await CreateDefaultClient();
- var response = await client.PostAsJsonAsync(CreateTokenUrl,
- new CreateTokenRequest { Username = username, Password = password });
- response.Should().HaveStatusCode(400)
- .And.HaveCommonBody()
- .Which.Code.Should().Be(ErrorCodes.TokenController.Create_BadCredential);
+ await client.TestPostAssertErrorAsync(CreateTokenUrl,
+ new CreateTokenRequest { Username = username, Password = password },
+ errorCode: ErrorCodes.TokenController.Create_BadCredential);
}
[Fact]
public async Task CreateToken_Success()
{
using var client = await CreateDefaultClient();
- var response = await client.PostAsJsonAsync(CreateTokenUrl,
+ var body = await client.TestPostAsync<CreateTokenResponse>(CreateTokenUrl,
new CreateTokenRequest { Username = "user1", Password = "user1pw" });
- var body = response.Should().HaveStatusCode(200)
- .And.HaveJsonBody<CreateTokenResponse>().Which;
body.Token.Should().NotBeNullOrWhiteSpace();
- body.User.Should().BeEquivalentTo(UserInfos[1]);
+ body.User.Should().BeEquivalentTo(await client.GetUserAsync("user1"));
}
[Fact]
public async Task VerifyToken_InvalidModel()
{
using var client = await CreateDefaultClient();
- (await client.PostAsJsonAsync(VerifyTokenUrl,
- new VerifyTokenRequest { Token = null })).Should().BeInvalidModel();
+ await client.TestPostAssertInvalidModelAsync(VerifyTokenUrl, new VerifyTokenRequest { Token = null! });
}
[Fact]
public async Task VerifyToken_BadFormat()
{
using var client = await CreateDefaultClient();
- var response = await client.PostAsJsonAsync(VerifyTokenUrl,
- new VerifyTokenRequest { Token = "bad token hahaha" });
- response.Should().HaveStatusCode(400)
- .And.HaveCommonBody()
- .Which.Code.Should().Be(ErrorCodes.TokenController.Verify_BadFormat);
+ await client.TestPostAssertErrorAsync(VerifyTokenUrl,
+ new VerifyTokenRequest { Token = "bad token hahaha" },
+ errorCode: ErrorCodes.TokenController.Verify_BadFormat);
}
[Fact]
@@ -106,11 +97,9 @@ namespace Timeline.Tests.IntegratedTests await userService.ModifyUser(id, new ModifyUserParams { Password = "user1pw" });
}
- (await client.PostAsJsonAsync(VerifyTokenUrl,
- new VerifyTokenRequest { Token = token }))
- .Should().HaveStatusCode(400)
- .And.HaveCommonBody()
- .Which.Code.Should().Be(ErrorCodes.TokenController.Verify_OldVersion);
+ await client.TestPostAssertErrorAsync(VerifyTokenUrl,
+ new VerifyTokenRequest { Token = token },
+ errorCode: ErrorCodes.TokenController.Verify_OldVersion);
}
[Fact]
@@ -125,11 +114,9 @@ namespace Timeline.Tests.IntegratedTests await userService.DeleteUser("user1");
}
- (await client.PostAsJsonAsync(VerifyTokenUrl,
- new VerifyTokenRequest { Token = token }))
- .Should().HaveStatusCode(400)
- .And.HaveCommonBody()
- .Which.Code.Should().Be(ErrorCodes.TokenController.Verify_UserNotExist);
+ await client.TestPostAssertErrorAsync(VerifyTokenUrl,
+ new VerifyTokenRequest { Token = token },
+ errorCode: ErrorCodes.TokenController.Verify_UserNotExist);
}
//[Fact]
@@ -155,11 +142,9 @@ namespace Timeline.Tests.IntegratedTests {
using var client = await CreateDefaultClient();
var createTokenResult = await CreateUserTokenAsync(client, "user1", "user1pw");
- var response = await client.PostAsJsonAsync(VerifyTokenUrl,
+ var body = await client.TestPostAsync<VerifyTokenResponse>(VerifyTokenUrl,
new VerifyTokenRequest { Token = createTokenResult.Token });
- response.Should().HaveStatusCode(200)
- .And.HaveJsonBody<VerifyTokenResponse>()
- .Which.User.Should().BeEquivalentTo(UserInfos[1]);
+ body.Should().BeEquivalentTo(await client.GetUserAsync("user1"));
}
}
}
|