From 160f933a38a1c4b82df2038ab2446acde873ff8f Mon Sep 17 00:00:00 2001 From: 杨宇千 Date: Mon, 21 Oct 2019 17:38:35 +0800 Subject: ... --- Timeline.Tests/IntegratedTests/UserUnitTest.cs | 188 ++++++++++--------------- 1 file changed, 76 insertions(+), 112 deletions(-) (limited to 'Timeline.Tests/IntegratedTests/UserUnitTest.cs') diff --git a/Timeline.Tests/IntegratedTests/UserUnitTest.cs b/Timeline.Tests/IntegratedTests/UserUnitTest.cs index 47a8699c..b00648de 100644 --- a/Timeline.Tests/IntegratedTests/UserUnitTest.cs +++ b/Timeline.Tests/IntegratedTests/UserUnitTest.cs @@ -170,131 +170,95 @@ namespace Timeline.Tests.IntegratedTests res.Should().BeDelete(false); } + private const string changeUsernameUrl = "userop/changeusername"; - public class ChangeUsernameUnitTest : IClassFixture>, IDisposable + public static IEnumerable Op_ChangeUsername_InvalidModel_Data() { - private const string url = "userop/changeusername"; - - private readonly TestApplication _testApp; - private readonly WebApplicationFactory _factory; - - public ChangeUsernameUnitTest(WebApplicationFactory factory) - { - _testApp = new TestApplication(factory); - _factory = _testApp.Factory; - } - - public void Dispose() - { - _testApp.Dispose(); - } - - public static IEnumerable InvalidModel_Data() - { - yield return new[] { null, "uuu" }; - yield return new[] { "uuu", null }; - yield return new[] { "uuu", "???" }; - } - - [Theory] - [MemberData(nameof(InvalidModel_Data))] - public async Task InvalidModel(string oldUsername, string newUsername) - { - using var client = await _factory.CreateClientAsAdmin(); - (await client.PostAsJsonAsync(url, - new ChangeUsernameRequest { OldUsername = oldUsername, NewUsername = newUsername })) - .Should().BeInvalidModel(); - } - - [Fact] - public async Task UserNotExist() - { - using var client = await _factory.CreateClientAsAdmin(); - var res = await client.PostAsJsonAsync(url, - new ChangeUsernameRequest { OldUsername = "usernotexist", NewUsername = "newUsername" }); - res.Should().HaveStatusCode(400) - .And.Should().HaveCommonBody() - .Which.Code.Should().Be(Op.ChangeUsername.NotExist); - } - - [Fact] - public async Task UserAlreadyExist() - { - using var client = await _factory.CreateClientAsAdmin(); - var res = await client.PostAsJsonAsync(url, - new ChangeUsernameRequest { OldUsername = MockUser.User.Username, NewUsername = MockUser.Admin.Username }); - res.Should().HaveStatusCode(400) - .And.Should().HaveCommonBody() - .Which.Code.Should().Be(Op.ChangeUsername.AlreadyExist); - } - - [Fact] - public async Task Success() - { - using var client = await _factory.CreateClientAsAdmin(); - const string newUsername = "hahaha"; - var res = await client.PostAsJsonAsync(url, - new ChangeUsernameRequest { OldUsername = MockUser.User.Username, NewUsername = newUsername }); - res.Should().HaveStatusCode(200); - await client.CreateUserTokenAsync(newUsername, MockUser.User.Password); - } + yield return new[] { null, "uuu" }; + yield return new[] { "uuu", null }; + yield return new[] { "uuu", "???" }; } + [Theory] + [MemberData(nameof(Op_ChangeUsername_InvalidModel_Data))] + public async Task Op_ChangeUsername_InvalidModel(string oldUsername, string newUsername) + { + using var client = await _factory.CreateClientAsAdmin(); + (await client.PostAsJsonAsync(changeUsernameUrl, + new ChangeUsernameRequest { OldUsername = oldUsername, NewUsername = newUsername })) + .Should().BeInvalidModel(); + } - public class ChangePasswordUnitTest : IClassFixture>, IDisposable + [Fact] + public async Task Op_ChangeUsername_UserNotExist() { - private const string url = "userop/changepassword"; + using var client = await _factory.CreateClientAsAdmin(); + var res = await client.PostAsJsonAsync(changeUsernameUrl, + new ChangeUsernameRequest { OldUsername = "usernotexist", NewUsername = "newUsername" }); + res.Should().HaveStatusCode(400) + .And.Should().HaveCommonBody() + .Which.Code.Should().Be(Op.ChangeUsername.NotExist); + } - private readonly TestApplication _testApp; - private readonly WebApplicationFactory _factory; + [Fact] + public async Task Op_ChangeUsername_UserAlreadyExist() + { + using var client = await _factory.CreateClientAsAdmin(); + var res = await client.PostAsJsonAsync(changeUsernameUrl, + new ChangeUsernameRequest { OldUsername = MockUser.User.Username, NewUsername = MockUser.Admin.Username }); + res.Should().HaveStatusCode(400) + .And.Should().HaveCommonBody() + .Which.Code.Should().Be(Op.ChangeUsername.AlreadyExist); + } - public ChangePasswordUnitTest(WebApplicationFactory factory) - { - _testApp = new TestApplication(factory); - _factory = _testApp.Factory; - } + [Fact] + public async Task Op_ChangeUsername_Success() + { + using var client = await _factory.CreateClientAsAdmin(); + const string newUsername = "hahaha"; + var res = await client.PostAsJsonAsync(changeUsernameUrl, + new ChangeUsernameRequest { OldUsername = MockUser.User.Username, NewUsername = newUsername }); + res.Should().HaveStatusCode(200); + await client.CreateUserTokenAsync(newUsername, MockUser.User.Password); + } - public void Dispose() - { - _testApp.Dispose(); - } + private const string changePasswordUrl = "userop/changepassword"; - public static IEnumerable InvalidModel_Data() - { - yield return new[] { null, "ppp" }; - yield return new[] { "ppp", null }; - } + public static IEnumerable Op_ChangePassword_InvalidModel_Data() + { + yield return new[] { null, "ppp" }; + yield return new[] { "ppp", null }; + } - [Theory] - [MemberData(nameof(InvalidModel_Data))] - public async Task InvalidModel(string oldPassword, string newPassword) - { - using var client = await _factory.CreateClientAsUser(); - (await client.PostAsJsonAsync(url, - new ChangePasswordRequest { OldPassword = oldPassword, NewPassword = newPassword })) - .Should().BeInvalidModel(); - } + [Theory] + [MemberData(nameof(Op_ChangePassword_InvalidModel_Data))] + public async Task Op_ChangePassword_InvalidModel(string oldPassword, string newPassword) + { + using var client = await _factory.CreateClientAsUser(); + (await client.PostAsJsonAsync(changePasswordUrl, + new ChangePasswordRequest { OldPassword = oldPassword, NewPassword = newPassword })) + .Should().BeInvalidModel(); + } - [Fact] - public async Task BadOldPassword() - { - using var client = await _factory.CreateClientAsUser(); - var res = await client.PostAsJsonAsync(url, new ChangePasswordRequest { OldPassword = "???", NewPassword = "???" }); - res.Should().HaveStatusCode(400) - .And.Should().HaveCommonBody() - .Which.Code.Should().Be(Op.ChangePassword.BadOldPassword); - } + [Fact] + public async Task Op_ChangePassword_BadOldPassword() + { + using var client = await _factory.CreateClientAsUser(); + var res = await client.PostAsJsonAsync(changePasswordUrl, new ChangePasswordRequest { OldPassword = "???", NewPassword = "???" }); + res.Should().HaveStatusCode(400) + .And.Should().HaveCommonBody() + .Which.Code.Should().Be(Op.ChangePassword.BadOldPassword); + } - [Fact] - public async Task Success() - { - using var client = await _factory.CreateClientAsUser(); - const string newPassword = "new"; - var res = await client.PostAsJsonAsync(url, - new ChangePasswordRequest { OldPassword = MockUser.User.Password, NewPassword = newPassword }); - res.Should().HaveStatusCode(200); - await client.CreateUserTokenAsync(MockUser.User.Username, newPassword); - } + [Fact] + public async Task Op_ChangePassword_Success() + { + using var client = await _factory.CreateClientAsUser(); + const string newPassword = "new"; + var res = await client.PostAsJsonAsync(changePasswordUrl, + new ChangePasswordRequest { OldPassword = MockUser.User.Password, NewPassword = newPassword }); + res.Should().HaveStatusCode(200); + await client.CreateUserTokenAsync(MockUser.User.Username, newPassword); } } } -- cgit v1.2.3