Added training reminder worker

This commit is contained in:
Chase Tucker
2024-04-10 09:59:55 -07:00
parent 156dee0751
commit ed89f25dad
9 changed files with 394 additions and 9 deletions

View File

@ -2,6 +2,7 @@ using FabApprovalWorkerService.Models;
using FabApprovalWorkerService.Services;
using Microsoft.Extensions.Logging;
using Microsoft.Identity.Client;
using Moq;
@ -458,4 +459,56 @@ internal class UserServiceTests {
Assert.That(actualEmail, Is.EqualTo(emailsFromDb.First()));
}
[Test]
public void GetUserByIdWithInvalidIdShouldThrowException() {
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.GetUserById(-4));
Assert.ThrowsAsync<ArgumentException>(async Task () => await _userService.GetUserById(0));
}
[Test]
public void GetUserByIdDbErrorShouldThrowException() {
_mockDalService.Setup(d => d.QueryAsync<User>(It.IsAny<string>())).Throws(new Exception());
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
Assert.ThrowsAsync<Exception>(async Task () => await _userService.GetUserById(5));
}
[Test]
public void GetUserByIdNoUserFoundShouldThrowException() {
IEnumerable<User> emptyUsers = new List<User>();
_mockDalService.Setup(d => d.QueryAsync<User>(It.IsAny<string>())).Returns(Task.FromResult(emptyUsers));
Assert.ThrowsAsync<Exception>(async Task() => await _userService.GetUserById(5));
}
[Test]
public async Task GetUserByIdShouldReturnExpectedUser() {
IEnumerable<User> expectedUsers = new List<User>() {
new User() {
UserID = 1,
LoginID = "id",
FirstName = "firstName",
LastName = "lastName",
Email = "email",
IsAdmin = false,
OOO = false,
CanViewITAR = true,
IsManager = false
}
};
_mockDalService.Setup(d => d.QueryAsync<User>(It.IsAny<string>())).Returns(Task.FromResult(expectedUsers));
_userService = new UserService(MOCK_LOGGER, _mockDalService.Object);
User actualUser = await _userService.GetUserById(4);
Assert.That(expectedUsers.First(), Is.EqualTo(actualUser));
}
}