public void SetUp() { _bus = new Mock<IBus>(); _accidentRecordRepository = new Mock<IAccidentRecordRepository>(); _siteRepository = new Mock<ISiteRepository>(); _userRepository = new Mock<IUserForAuditingRepository>(); _user = new UserForAuditing { Id = new Guid() }; _site = new Site(); _accidentRecord = new AccidentRecord() { Id = _accidentRecordId, CompanyId = _companyId, SiteWhereHappened = _site, DoNotSendEmailNotification = false, EmailNotificationSent = false }; _userRepository .Setup(curUserRepository => curUserRepository.GetByIdAndCompanyId(It.IsAny<Guid>(),It.IsAny<long>())) .Returns(_user); _accidentRecordRepository.Setup(x => x.GetByIdAndCompanyId(It.IsAny<long>(), It.IsAny<long>())) .Returns(_accidentRecord); var emp = new Employee(); emp.ContactDetails = new List<EmployeeContactDetail>(); emp.ContactDetails.Add(new EmployeeContactDetail() { Employee = emp, Email = "*****@*****.**" }); _site.AddAccidentRecordNotificationMember(emp, _user); _siteRepository.Setup(x => x.GetById(It.IsAny<long>())).Returns(_site); }
public void Setup() { _accidentRecordRepository = new Mock<IAccidentRecordRepository>(); _userRepository = new Mock<IUserForAuditingRepository>(); _log = new Mock<IPeninsulaLog>(); _userRepository .Setup(curUserRepository => curUserRepository.GetByIdAndCompanyId(It.IsAny<Guid>(),It.IsAny<long>())) .Returns(() => _user); _userRepository .Setup(curUserRepository => curUserRepository.GetById(It.IsAny<Guid>())) .Returns(() => _user); _accidentRecordRepository.Setup(x => x.GetByIdAndCompanyId(It.IsAny<long>(), It.IsAny<long>())) .Returns(() => _accidentRecord); _accidentRecord = new AccidentRecord() { Id = 123123 }; _request = new RemoveDocumentsFromAccidentRecordRequest() { AccidentRecordId = 123123, CompanyId = 589, DocumentLibraryIds = new List<long>() {56, 154, 234}, UserId = _user.Id }; }
public void Given_accident_is_fatal_then_next_steps_available_equals_true() { var accidentRecord = new AccidentRecord(); accidentRecord.SeverityOfInjury = SeverityOfInjuryEnum.Fatal; Assert.IsTrue(accidentRecord.NextStepsAvailable); }
public void When_requesting_Create_values_are_set_correctly() { //Given var user = new UserForAuditing() { Id = Guid.NewGuid() }; var createAccidentRecordParams = new AccidentRecord() { CompanyId = 1L, Title = "title", Reference = "reference", CreatedBy = user, CreatedOn = _now, Deleted = false }; DocumentType docType = new DocumentType() {Name = "Accident Record Doc", Id = 17}; //When var result = AccidentRecordDocument.Create("description", "Filename.ext", 1L, docType, createAccidentRecordParams, user); //Then Assert.That(result.ClientId, Is.EqualTo(1L)); Assert.That(result.DocumentLibraryId, Is.EqualTo(1L)); Assert.That(result.Description, Is.EqualTo("description")); Assert.That(result.Title, Is.EqualTo("Filename.ext")); Assert.That(result.Filename, Is.EqualTo("Filename.ext")); Assert.That(result.CreatedBy, Is.EqualTo(createAccidentRecordParams.CreatedBy)); }
public void When_handle_Then_should_call_correct_methods() { // Given var handler = GetTarget(); var message = new SendOffWorkReminderEmail { AccidentRecordId = 1L, RecipientEmail = "*****@*****.**", Title = "Test", AccidentRecordReference = "AR99", DateOfAccident = DateTime.Now }; AccidentRecord accidentRecord = new AccidentRecord { EmployeeInjured = new Employee { Forename = "Injured", Surname = "Person" }, DateAndTimeOfAccident = DateTime.Now, Jurisdiction = new Jurisdiction { Name = "GB" } }; _accidentRecordRepository.Setup(x => x.GetById(It.IsAny<long>())).Returns(accidentRecord); // When handler.Handle(message); // Then _emailSender.Verify(x => x.Send(It.IsAny<RazorEmailResult>())); }
private Employee GetCreator(AccidentRecord rec) { var employee = _getEmployeeQuery .WithCompanyId(rec.CompanyId) .WithEmployeeId(rec.CreatedBy.Employee.Id) .Execute(_businessSafeSessionManager.Session); return employee; }
public void Given_person_involved_NOT_answered_then_next_steps_available_equals_false() { var accidentRecord = new AccidentRecord(); accidentRecord.SeverityOfInjury = SeverityOfInjuryEnum.Minor; accidentRecord.PersonInvolved = null; accidentRecord.InjuredPersonAbleToCarryOutWork = YesNoUnknownEnum.Yes; accidentRecord.InjuredPersonWasTakenToHospital = true; Assert.IsFalse(accidentRecord.NextStepsAvailable); }
public void Given_employee_is_in_a_non_fatal_accident_taken_to_hospital_question_NOT_answered_and_able_continue_working_then_next_steps_available_equals_false() { var accidentRecord = new AccidentRecord(); accidentRecord.SeverityOfInjury = SeverityOfInjuryEnum.Minor; accidentRecord.PersonInvolved = PersonInvolvedEnum.Employee; accidentRecord.InjuredPersonAbleToCarryOutWork = YesNoUnknownEnum.Yes; accidentRecord.InjuredPersonWasTakenToHospital = null; Assert.IsFalse(accidentRecord.NextStepsAvailable); }
public void Given_employee_is_in_a_non_fatal_accident_taken_to_hospital_question_answered_not_able_to_continue_working_and_length_of_time_off_answered_then_next_steps_available_equals_true() { var accidentRecord = new AccidentRecord(); accidentRecord.SeverityOfInjury = SeverityOfInjuryEnum.Minor; accidentRecord.PersonInvolved = PersonInvolvedEnum.Employee; accidentRecord.InjuredPersonAbleToCarryOutWork = YesNoUnknownEnum.No; accidentRecord.InjuredPersonWasTakenToHospital = true; accidentRecord.LengthOfTimeUnableToCarryOutWork = LengthOfTimeUnableToCarryOutWorkEnum.ThreeOrLessDays; Assert.IsTrue(accidentRecord.NextStepsAvailable); }
public void Given_injury_is_in_list_when_AddInjury_then_Injury_is_not_duplicated() { //given var injury = new Injury() { Id = 3425, Description = "Anterior cruciate ligament" }; var target = new AccidentRecord(); target.AddInjury(injury, null); target.AddInjury(injury, null); Assert.AreEqual(1, target.AccidentRecordInjuries.Count); }
public void Given_body_part_is_in_list_when_AddBodyPart_then_body_part_is_not_duplicated() { //given var bodyPart = new BodyPart() { Id = 3425, Description = "Finger nail" }; var target = new AccidentRecord(); target.AddBodyPartThatWasInjured(bodyPart, null); target.AddBodyPartThatWasInjured(bodyPart, null); Assert.AreEqual(1, target.AccidentRecordBodyParts.Count); }
public void Given_injury_list_is_empty_when_AddInjury_then_Injury_appears_in_list() { //given var injury = new Injury() {Id = 3425, Description = "Anterior cruciate ligament"}; var target = new AccidentRecord(); target.AddInjury(injury,null); Assert.IsTrue(target.AccidentRecordInjuries.Any(x => x.Injury.Id == injury.Id)); Assert.AreEqual(target, target.AccidentRecordInjuries.First(x => x.Injury.Id == injury.Id)); }
public void Given_body_part_list_is_empty_when_AddBodyPart_then_body_part_appears_in_list() { //given var bodyPart = new BodyPart() { Id = 3425, Description = "Toe nail" }; var target = new AccidentRecord(); target.AddBodyPartThatWasInjured(bodyPart, null); Assert.IsTrue(target.AccidentRecordBodyParts.Any(x => x.BodyPart.Id == bodyPart.Id)); Assert.AreEqual(target, target.AccidentRecordBodyParts.First(x => x.BodyPart.Id == bodyPart.Id)); }
public static AccidentRecordDocument Create(string description, string filename, long documentLibraryId, DocumentType documentType, AccidentRecord accidentRecordRequest, UserForAuditing user) { return new AccidentRecordDocument { Description = description, ClientId = accidentRecordRequest.CompanyId, Title = filename, CreatedBy = user, CreatedOn = DateTime.Now, Filename = filename, DocumentLibraryId = documentLibraryId, AccidentRecord = accidentRecordRequest, Deleted = false, DocumentType = documentType }; }
public void Given_bodypart_is_not_in_list_when_RemoveInjury_then_Injury_list_remains_the_same() { //given var bodypart = new BodyPart() { Id = 3425, Description = "Anterior cruciate ligament" }; var bodypart2 = new BodyPart() { Id = 123124, Description = "Hip flexior" }; var target = new AccidentRecord(); target.AddBodyPartThatWasInjured(bodypart, null); target.AddBodyPartThatWasInjured(bodypart2, null); //when target.RemoveBodyPartThatWasInjured(new BodyPart() { Id = 124314, Description = "Test" }, null); Assert.AreEqual(2, target.AccidentRecordBodyParts.Count); }
public void Given_injury_is_in_list_when_RemoveInjury_then_Injury_removed_from_list() { //given var injury = new Injury() { Id = 3425, Description = "Anterior cruciate ligament", Deleted = false}; var injury2 = new Injury() { Id = 123124, Description = "Hip flexior", Deleted = false }; var target = new AccidentRecord(); target.AddInjury(injury, null); target.AddInjury(injury2, null); //when target.RemoveInjury(injury2, null); Assert.AreEqual(1, target.AccidentRecordInjuries.Count); Assert.IsTrue(target.AccidentRecordInjuries.All(x => x.Injury.Id != injury2.Id)); }
public void Given_bodypart_is_in_list_when_RemoveInjury_then_Injury_removed_from_list() { //given var bodypart = new BodyPart() { Id = 3425, Description = "Anterior cruciate ligament", Deleted = false}; var bodypart2 = new BodyPart() { Id = 123124, Description = "Hip flexior", Deleted = false }; var target = new AccidentRecord(); target.AddBodyPartThatWasInjured(bodypart, null); target.AddBodyPartThatWasInjured(bodypart2, null); //when target.RemoveBodyPartThatWasInjured(bodypart2, null); Assert.AreEqual(1, target.AccidentRecordBodyParts.Count); Assert.IsTrue(target.AccidentRecordBodyParts.All(x => x.BodyPart.Id != bodypart2.Id)); }
public void Given_injury_is_not_in_list_when_RemoveInjury_then_Injury_list_remains_the_same() { //given var injury = new Injury() { Id = 3425, Description = "Anterior cruciate ligament" }; var injury2 = new Injury() { Id = 123124, Description = "Hip flexior" }; var target = new AccidentRecord(); target.AddInjury(injury, null); target.AddInjury(injury2, null); //when target.RemoveInjury(new Injury() {Id = 124314, Description = "Test"},null); Assert.AreEqual(2, target.AccidentRecordInjuries.Count); }
public void Setup() { _accidentRecordRepository = new Mock<IAccidentRecordRepository>(); _userRepository = new Mock<IUserForAuditingRepository>(); _log = new Mock<IPeninsulaLog>(); _userRepository .Setup(curUserRepository => curUserRepository.GetByIdAndCompanyId(It.IsAny<Guid>(),It.IsAny<long>())) .Returns(() => _user); _userRepository .Setup(curUserRepository => curUserRepository.GetById(It.IsAny<Guid>())) .Returns(() => _user); _accidentRecordRepository.Setup(x => x.GetByIdAndCompanyId(It.IsAny<long>(), It.IsAny<long>())) .Returns(() => _accidentRecord); _accidentRecord = new AccidentRecord() { Id = 123123 }; }
public void Setup() { _accidentRecord = new AccidentRecord() { Id = 123123, Jurisdiction = new Jurisdiction{ Name = JurisdictionNames.GB } }; _accidentRecordRepository = new Mock<IAccidentRecordRepository>(); _userRepository = new Mock<IUserForAuditingRepository>(); _log = new Mock<IPeninsulaLog>(); _injuryRepo = new Mock<IInjuryRepository>(); _bodyRepo = new Mock<IBodyPartRepository>(); _userRepository .Setup(curUserRepository => curUserRepository.GetByIdAndCompanyId(It.IsAny<Guid>(), It.IsAny<long>())) .Returns(() => _user); _userRepository .Setup(curUserRepository => curUserRepository.GetById(It.IsAny<Guid>())) .Returns(() => _user); _accidentRecordRepository.Setup(x => x.GetByIdAndCompanyId(It.IsAny<long>(), It.IsAny<long>())) .Returns(() => _accidentRecord); _bodyRepo.Setup(x => x.GetById(It.IsAny<long>())) .Returns<long>(x => new BodyPart(){Id = x}); _injuryRepo.Setup(x => x.GetById(It.IsAny<long>())) .Returns<long>(x => new Injury() { Id = x }); _bodyRepo.Setup(x => x.GetByIds(It.IsAny<IList<long>>())) .Returns<IList<long>>(x => x.Select(id => new BodyPart() { Id = id })); _injuryRepo.Setup(x => x.GetByIds(It.IsAny<IList<long>>())) .Returns<IList<long>>(ids => ids.Select(id => new Injury() { Id = id })); _request = new UpdateInjuryDetailsRequest() { AccidentRecordId = 56456, CurrentUserId = _user.Id }; }
public void Setup() { _accidentRecordRepository = new Mock<IAccidentRecordRepository>(); _userRepository = new Mock<IUserForAuditingRepository>(); _log = new Mock<IPeninsulaLog>(); _documentTypeRepository = new Mock<IDocumentTypeRepository>(); _userRepository .Setup(curUserRepository => curUserRepository.GetByIdAndCompanyId(It.IsAny<Guid>(),It.IsAny<long>())) .Returns(() => _user); _userRepository .Setup(curUserRepository => curUserRepository.GetById(It.IsAny<Guid>())) .Returns(() => _user); _accidentRecordRepository.Setup(x => x.GetByIdAndCompanyId(It.IsAny<long>(), It.IsAny<long>())) .Returns(() => _accidentRecord); _accidentRecord = new AccidentRecord() { Id = 123123 }; _documentTypeRepository.Setup(x => x.GetById(It.IsAny<long>())) .Returns(new DocumentType() {Id = 17, Name = "Accident Record"}); _request = new AddDocumentToAccidentReportRequest() { AccidentRecordId = 56456, CompanyId = _user.CompanyId, DocumentLibraryIds = new List<DocumentLibraryFile>() { new DocumentLibraryFile() {Id = 123, Description = "descaf", Filename = "test.txt"} } , UserId = _user.Id }; }
public void Given_employee_was_in_a_non_fatal_accident_and_its_unknown_whether_they_have_been_able_to_return_to_work_then_next_steps_available_equals_true() { var accidentRecord = new AccidentRecord(); accidentRecord.SeverityOfInjury = SeverityOfInjuryEnum.Minor; accidentRecord.PersonInvolved = PersonInvolvedEnum.Employee; accidentRecord.InjuredPersonWasTakenToHospital = false; accidentRecord.InjuredPersonAbleToCarryOutWork = YesNoUnknownEnum.Unknown; Assert.True(accidentRecord.NextStepsAvailable); }
public void Given_InjuredPersonAbleToCarryOutWork_NOT_answered_then_next_steps_available_equals_false() { var accidentRecord = new AccidentRecord(); accidentRecord.SeverityOfInjury = SeverityOfInjuryEnum.Minor; accidentRecord.PersonInvolved = PersonInvolvedEnum.Employee; accidentRecord.InjuredPersonAbleToCarryOutWork = null; Assert.IsFalse(accidentRecord.NextStepsAvailable); }
public void given_employee_escalation_task_then_call_nservice_bus_send_method_with_correct_parameters() { //given var email = "*****@*****.**"; var employee = new Employee { Id = Guid.NewGuid(), ContactDetails = new List<EmployeeContactDetail>() {new EmployeeContactDetail{Id = 1L,Email = email} } }; _employeeQuery.Setup(x => x.WithCompanyId(It.IsAny<long>())).Returns(_employeeQuery.Object); _employeeQuery.Setup(x => x.WithEmployeeId(It.IsAny<Guid>())).Returns(_employeeQuery.Object); _employeeQuery.Setup(x => x.Execute(It.IsAny<ISession>())).Returns(employee); var accidentRecord = new AccidentRecord { Id = 1L, CompanyId = 1234L, Jurisdiction = new Jurisdiction {Id = 1}, InjuredPersonAbleToCarryOutWork = YesNoUnknownEnum.Unknown, Title = "Test accident record", Reference = "AR1", DateAndTimeOfAccident = DateTime.Now, CreatedBy = new UserForAuditing {Employee = new EmployeeForAuditing {Id = Guid.NewGuid()}} }; _query .Setup(x => x.Execute(_sessionManager.Object.Session)) .Returns( new List<AccidentRecord>(){ accidentRecord } ); EmployeeOffWorkEscalation task = CreateEscalationTask(); //when task.Execute(); //then _command.Verify(x => x.Execute(_sessionManager.Object.Session, It.IsAny<long>(), It.IsAny<DateTime>()), Times.Once()); _bus.Verify(x => x.Send(It.Is<SendOffWorkReminderEmail>( y => y.AccidentRecordId == accidentRecord.Id && y.RecipientEmail == email && y.Title == accidentRecord.Title && y.AccidentRecordReference == accidentRecord.Reference && y.DateOfAccident == accidentRecord.DateAndTimeOfAccident ))); }
public void given_accident_record_when_execute_then_employee_query_returns_employee() { //given EmployeeOffWorkEscalation task = CreateEscalationTask(); var employee = new Employee { Id = Guid.NewGuid() }; var accidentRecord = new AccidentRecord { Id = 1L, CompanyId = 1234L, Jurisdiction = new Jurisdiction { Id = 1 }, InjuredPersonAbleToCarryOutWork = YesNoUnknownEnum.Unknown, Title = "Test accident record", Reference = "AR1", DateAndTimeOfAccident = DateTime.Now, CreatedBy = new UserForAuditing {Employee = new EmployeeForAuditing {Id = Guid.NewGuid()}} }; _query .Setup(x => x.Execute(_sessionManager.Object.Session)) .Returns(new List<AccidentRecord>(){accidentRecord}); _employeeQuery.Setup(x => x.WithCompanyId(It.IsAny<long>())).Returns(_employeeQuery.Object); _employeeQuery.Setup(x => x.WithEmployeeId(It.IsAny<Guid>())).Returns(_employeeQuery.Object); _employeeQuery.Setup(x => x.Execute(It.IsAny<ISession>())).Returns(employee); _employeeQuery.Object .WithCompanyId(_companyId) .WithEmployeeId(employee.Id); //when task.Execute(); //then _employeeQuery.Verify(x => x.WithCompanyId(_companyId), Times.AtLeastOnce()); _employeeQuery.Verify(x => x.WithEmployeeId(employee.Id), Times.AtLeastOnce()); _employeeQuery.Verify(x=>x.Execute(It.IsAny<ISession>())); }
public void Given_a_vistor_was_in_an_accident_then_next_steps_available_equals_true() { var accidentRecord = new AccidentRecord(); accidentRecord.SeverityOfInjury = SeverityOfInjuryEnum.Minor; accidentRecord.PersonInvolved = PersonInvolvedEnum.Visitor; accidentRecord.InjuredPersonWasTakenToHospital = false; Assert.True(accidentRecord.NextStepsAvailable); }
public void Given_email_notification_is_required_when_SendAccidentRecordEmails_and_email_sent_then_email_notification_sent_status_is_set_to_true() { //Given SendAccidentRecordEmail emailCommand = null; _bus.Setup(x => x.Send(It.IsAny<object[]>())) .Callback<object[]>(y => emailCommand = y.First() as SendAccidentRecordEmail); //when var target = GetTarget(); var updatedActionRecord = new AccidentRecord(); _accidentRecordRepository.Setup(x => x.Save(It.IsAny<AccidentRecord>())). Callback<AccidentRecord>(y => updatedActionRecord = y); target.SendAccidentRecordEmails(_accidentRecordId, _companyId, _user.Id); // Then _bus.Verify(x => x.Send(It.IsAny<object[]>())); Assert.That(emailCommand.CompanyId, Is.EqualTo(_companyId)); Assert.That(emailCommand.AccidentRecordId, Is.EqualTo(_accidentRecordId)); Assert.That(updatedActionRecord.EmailNotificationSent, Is.EqualTo(true)); }