Added training reminder worker
This commit is contained in:
@ -1,4 +1,5 @@
|
||||
using FabApprovalWorkerService.Services;
|
||||
using FabApprovalWorkerService.Models;
|
||||
using FabApprovalWorkerService.Services;
|
||||
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
@ -26,6 +27,8 @@ public class TrainingServiceTests {
|
||||
public void TrainingServiceWithNullDalServiceShouldThrowException() {
|
||||
Assert.Throws<ArgumentNullException>(() => new TrainingService(_mockLogger.Object, null));
|
||||
}
|
||||
<<<<<<< Updated upstream
|
||||
=======
|
||||
|
||||
[Test]
|
||||
public void DeleteDocAssignmentWithInvalidIdShouldThrowException() {
|
||||
@ -169,4 +172,71 @@ public class TrainingServiceTests {
|
||||
|
||||
_mockDalService.Verify(d => d.ExecuteAsync(It.IsAny<string>()));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task GetActiveTrainingAssignmentsShouldReturnExpectedAssignments() {
|
||||
IEnumerable<TrainingAssignment> expectedAssignments = new List<TrainingAssignment>() {
|
||||
new TrainingAssignment() {
|
||||
ID = 1,
|
||||
TrainingID = 1,
|
||||
UserID = 1,
|
||||
DateAssigned = DateTime.Now
|
||||
},
|
||||
new TrainingAssignment() {
|
||||
ID = 2,
|
||||
TrainingID = 1,
|
||||
UserID = 2,
|
||||
DateAssigned = DateTime.Now
|
||||
},
|
||||
new TrainingAssignment() {
|
||||
ID = 3,
|
||||
TrainingID = 1,
|
||||
UserID = 3,
|
||||
DateAssigned = DateTime.Now
|
||||
}
|
||||
};
|
||||
|
||||
_mockDalService.Setup(d => d.QueryAsync<TrainingAssignment>(It.IsAny<string>())).Returns(Task.FromResult(expectedAssignments));
|
||||
|
||||
_trainingService = new TrainingService(_mockLogger.Object, _mockDalService.Object);
|
||||
|
||||
IEnumerable<TrainingAssignment> actualAssignments = await _trainingService.GetActiveTrainingAssignments();
|
||||
|
||||
Assert.That(actualAssignments.Count() == expectedAssignments.Count());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GetActiveTrainingAssignmentsWithDbErrorShouldThrowException() {
|
||||
_mockDalService.Setup(d => d.QueryAsync<TrainingAssignment>(It.IsAny<string>())).Throws(new Exception());
|
||||
|
||||
_trainingService = new TrainingService(_mockLogger.Object, _mockDalService.Object);
|
||||
|
||||
Assert.ThrowsAsync<Exception>(async Task() => await _trainingService.GetActiveTrainingAssignments());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void UpdateTrainingAssignmentLastNotificationWithInvalidIdShouldThrowException() {
|
||||
_trainingService = new TrainingService(_mockLogger.Object, _mockDalService.Object);
|
||||
|
||||
Assert.ThrowsAsync<ArgumentException>(async Task () => await _trainingService.UpdateTrainingAssignmentLastNotification(-1));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void UpdateTrainingAssignmentLastNotificationDbErrorShouldThrowException() {
|
||||
_mockDalService.Setup(d => d.ExecuteAsync(It.IsAny<string>())).Throws(new Exception());
|
||||
|
||||
_trainingService = new TrainingService(_mockLogger.Object, _mockDalService.Object);
|
||||
|
||||
Assert.ThrowsAsync<Exception>(async Task () => await _trainingService.UpdateTrainingAssignmentLastNotification(1));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task UpdateTrainingAssignmentLastNotificationShouldExecuteSql() {
|
||||
_trainingService = new TrainingService(_mockLogger.Object, _mockDalService.Object);
|
||||
|
||||
await _trainingService.UpdateTrainingAssignmentLastNotification(1);
|
||||
|
||||
_mockDalService.Verify(d => d.ExecuteAsync(It.IsAny<string>()), Times.Once());
|
||||
}
|
||||
>>>>>>> Stashed changes
|
||||
}
|
||||
|
Reference in New Issue
Block a user