Added missing tests

This commit is contained in:
Chase Tucker
2024-03-25 14:07:30 -07:00
parent 69fdd98ab3
commit c4baef8025
2 changed files with 167 additions and 56 deletions

View File

@ -74,19 +74,34 @@ public class UserServiceTests {
}
[Test]
public async Task GetAllActiveOOOUsersShouldReturnMockUsers() {
//Arrange
public async Task GetAllExpiredOOOUsersDbErrorShouldThrowException() {
_mockDalService.Setup(d => d.QueryAsync<User>(It.IsAny<string>())).ThrowsAsync(new Exception("whoops!"));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<Exception>(async Task() => await _userService.GetAllExpiredOOOUsersAsync());
}
[Test]
public async Task GetAllExpiredOOOUsersShouldReturnMockUsers() {
_mockDalService.Setup(d => d.QueryAsync<User>(It.IsAny<string>())).Returns(Task.FromResult(MOCK_USERS));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
//Act
List<User> users = await _userService.GetAllExpiredOOOUsersAsync();
//Assert
Assert.True(users.Count() == 2);
}
[Test]
public async Task GetAllPendingOOOUsersDbErrorShouldThrowException() {
_mockDalService.Setup(d => d.QueryAsync<OOOTemp>(It.IsAny<string>())).ThrowsAsync(new Exception("whoops!"));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<Exception>(async Task () => await _userService.GetAllPendingOOOUsersAsync());
}
[Test]
public async Task GetAllPendingOOOUsersShouldReturnMockOOOTemps() {
_mockDalService.Setup(d => d.QueryAsync<OOOTemp>(It.IsAny<string>())).Returns(Task.FromResult(MOCK_OOO_TEMPS));
@ -138,6 +153,15 @@ public class UserServiceTests {
Assert.False(await _userService.IsDelegatorAlreadyDelegatedTo(0));
}
[Test]
public async Task IsDelegatorAlreadyDelegatedToDbErrorShouldThrowException() {
_mockDalService.Setup(d => d.QueryAsync<User>(It.IsAny<string>())).ThrowsAsync(new Exception("whoops!"));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<Exception>(async Task() => await _userService.IsDelegatorAlreadyDelegatedTo(2));
}
[Test]
public async Task IsDelegatorAlreadyDelegatedToWithNoUsersShouldReturnFalse() {
IEnumerable<User> emptyUsers = new List<User>();
@ -199,21 +223,41 @@ public class UserServiceTests {
}
[Test]
public async Task UpdateUserSubRolesWithInvalidUserIdShouldThrowException() {
public async Task RemoveDelegatedRolesWithInvalidUserIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.RemoveDelegatedRoles(0));
}
[Test]
public async Task RemoveDelegatedRolesWithValidUserIdShouldReturnTrue() {
_mockDalService.Setup(d => d.ExecuteAsync(It.IsAny<string>())).Returns(Task.FromResult(1));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
bool actual = await _userService.RemoveDelegatedRoles(2);
_mockDalService.Verify(d => d.ExecuteAsync(It.IsAny<string>()));
Assert.True(actual);
}
[Test]
public async Task DelegateUserSubRolesWithInvalidUserIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.DelegateUserSubRoles(0, 2));
}
[Test]
public async Task UpdateUserSubRolesWithInvalidDelegateIdShouldThrowException() {
public async Task DelegateUserSubRolesWithInvalidDelegateIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.DelegateUserSubRoles(2, 0));
}
[Test]
public async Task UpdateUserSubRolesWithValidUserIdShouldReturnTrue() {
public async Task DelegateUserSubRolesWithValidUserIdShouldReturnTrue() {
_mockDalService.Setup(d => d.ExecuteAsync(It.IsAny<string>())).Returns(Task.FromResult(1));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
@ -223,6 +267,32 @@ public class UserServiceTests {
Assert.True(actual);
}
[Test]
public async Task RemoveDelegatedUserSubRolesWithInvalidUserShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.RemoveDelegatedUserSubRoles(0, 2));
}
[Test]
public async Task RemoveDelegateUserSubRolesWithInvalidDelegateIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.RemoveDelegatedUserSubRoles(2, 0));
}
[Test]
public async Task RemoveDelegatedUserSubRolesWithValidParamsShouldReturnTrue() {
IEnumerable<int> roleIds = new List<int>() {1, 2};
_mockDalService.Setup(d => d.QueryAsync<int>(It.IsAny<string>())).Returns(Task.FromResult(roleIds));
_mockDalService.Setup(d => d.ExecuteAsync(It.IsAny<string>())).Returns(Task.FromResult(1));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.True(await _userService.RemoveDelegatedUserSubRoles(1, 2));
}
[Test]
public async Task DelegateApprovalsForUserWithInvalidUserIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
@ -248,6 +318,32 @@ public class UserServiceTests {
Assert.True(actual);
}
[Test]
public async Task RemoveDelegatedApprovalsForUserWithInvalidUserIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.RemoveDelegatedApprovalsForUser(0, 2));
}
[Test]
public async Task RemoveDelegatedApprovalsForUserWithInvalidDelegateIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.RemoveDelegatedApprovalsForUser(2, 0));
}
[Test]
public async Task RemoveDelegatedApprovalsForUserWithValidUserIdShouldReturnTrue() {
IEnumerable<int> roleIds = new List<int>() { 1, 2 };
_mockDalService.Setup(d => d.QueryAsync<int>(It.IsAny<string>())).Returns(Task.FromResult(roleIds));
_mockDalService.Setup(d => d.ExecuteAsync(It.IsAny<string>())).Returns(Task.FromResult(1));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.True(await _userService.RemoveDelegatedApprovalsForUser(1, 2));
}
[Test]
public async Task FlagUserAsOOOWithNullOOOTempShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
@ -291,6 +387,22 @@ public class UserServiceTests {
Assert.False(actual);
}
[Test]
public async Task RemoveOOOFlagForUserWithInvalidIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.RemoveOOOFlagForUser(0));
}
[Test]
public async Task RemoveOOOFlagForUserWithValidIdShouldReturnTrue() {
_mockDalService.Setup(d => d.ExecuteAsync(It.IsAny<string>())).Returns(Task.FromResult(1));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.True(await _userService.RemoveOOOFlagForUser(1));
}
[Test]
public async Task SetOOOTempProcessedWithNullOOOTempShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);