public void DutyChangesCopied() { // Arrange List<PairingDutyChange> dutyChanges = GetDutyChanges(); IDataAccess dataAccess = GetMockDataAccess(dutyChanges); var sut = new UpdateCPDutyJob(); // Act JobResult result = this.RunJob(sut, dataAccess); // Assert Assert.AreEqual(Result.Success, result.Result, this.JobOutput); IList<object[]> arguments = dataAccess.GetArgumentsForCallsMadeOn(x => x.Save<CPDutyChange>(null, false)); var savedDutyChanges = (IEnumerable<CPDutyChange>)arguments[0][0]; Assert.AreEqual(1, savedDutyChanges.Count()); PairingDutyChange original = dutyChanges[0]; CPDutyChange dutyChange = savedDutyChanges.First(); Assert.AreEqual(original.Pairing.StartDate.ToString("d-MMM HH:mm"), dutyChange.DutySignOn); Assert.AreEqual(original.Pairing.EndDate.ToString("d-MMM HH:mm"), dutyChange.DutySignOff); Assert.AreEqual(original.Pairing.Label, dutyChange.Duty); Assert.AreEqual(original.Pairing.Port.IataCode + original.Pairing.ToPort.IataCode, dutyChange.DutyFromTo); Assert.AreEqual(1, dutyChange.EmployeeId); dataAccess.VerifyAllExpectations(); }
public void AcknowledgedDutyChangesCopiedBack() { // Arrange List<PairingDutyChange> dutyChanges = GetDutyChanges(); IDataAccess dataAccess = GetMockDataAccess(dutyChanges); var sut = new UpdateCPDutyJob(); var parameters = new List<JobParameter> { new JobParameter { Name = "ShowDutyHoursBefore", Value = "1" }, new JobParameter { Name = "ShowDutyHoursAfter", Value = "1" }, }; // Act JobResult result = this.RunJob(sut, dataAccess, parameters.ToDictionary(jp => jp.Name)); // Assert Assert.AreEqual(Result.Success, result.Result, this.JobOutput); IList<object[]> arguments = dataAccess.GetArgumentsForCallsMadeOn(x => x.Save<PairingDutyChangeEmployee>(null)); Assert.AreEqual(1, arguments.Count, "Save should be called once."); Assert.IsNotNull(arguments[0][0]); var entities = arguments[0][0] as IEnumerable<PairingDutyChangeEmployee>; Assert.IsNotNull(entities); PairingDutyChangeEmployee entity = entities.FirstOrDefault(); Assert.IsNotNull(entity); Assert.AreEqual(1, entity.AcknowledgedBy); Assert.AreEqual(2, entity.AcknowledgedType); Assert.AreEqual(new DateTime(2011, 1, 1), entity.AcknowledgedDate); Assert.AreEqual(2, entity.EmployeeId); dataAccess.VerifyAllExpectations(); }
public void OldDutyChangesDeleted() { // Arrange List<PairingDutyChange> dutyChanges = GetDutyChanges(); IDataAccess dataAccess = GetMockDataAccess(dutyChanges); var sut = new UpdateCPDutyJob(); // Act JobResult result = this.RunJob(sut, dataAccess); // Assert Assert.AreEqual(Result.Success, result.Result, this.JobOutput); // dataAccess.AssertWasCalled(x=>x.Delete(null), Arg) IList<object[]> arguments = dataAccess.GetArgumentsForCallsMadeOn(x => x.Delete<CPDutyChange>(null)); Assert.IsNotNull(arguments[0][0]); dataAccess.VerifyAllExpectations(); }