public void FindAppointments_Valid() { var fromDate = new DateTime(2012, 06, 20); var toDate = fromDate.AddDays(5); var siteCode = "GKGZ"; var inModel = new AppointmentSearchCriteriaModel { AppointmentDateFrom = fromDate, AppointmentDateTo = toDate, SiteCode = siteCode }; var request = MappingEngine.Map <AppointmentListCriteria>(inModel); var response = new AppointmentListResponse { Appointment = new[] { new Appointment { AppointmentID = 1, JobSeekerID = 3, SessionID = 2, CreationSite = siteCode } }, ExecutionResult = new ExecutionResult { Status = ExecuteStatus.Success } }; var outModel = MappingEngine.Map <IEnumerable <AppointmentModel> >(response.Appointment); mockMappingEngine.Setup(m => m.Map <AppointmentListCriteria>(inModel)).Returns(request); mockDiaryAppointmentWcf.Setup(m => m.List(request)).Returns(response); mockMappingEngine.Setup(m => m.Map <IEnumerable <AppointmentModel> >(response.Appointment)).Returns(outModel); var result = SystemUnderTest().FindAppointments(inModel); Assert.IsTrue(result.Count() == outModel.Count()); Assert.IsTrue(result.First().AppointmentID == outModel.First().AppointmentID); Assert.IsTrue(result.First().CreationSiteCode == outModel.First().CreationSiteCode); mockDiaryAppointmentWcf.Verify(m => m.List(It.IsAny <AppointmentListCriteria>()), Times.Once()); mockMappingEngine.Verify(m => m.Map <IEnumerable <AppointmentModel> >(response.Appointment), Times.Once()); }
public void FindAppointments_WcfThrowsFaultException_ThrowsServiceValidationException() { var exception = new FaultException(new FaultReason("reason"), new FaultCode("code")); var fromDate = new DateTime(2012, 06, 20); var toDate = fromDate.AddDays(5); var siteCode = "GKGZ"; var inModel = new AppointmentSearchCriteriaModel { AppointmentDateFrom = fromDate, AppointmentDateTo = toDate, SiteCode = siteCode }; var request = MappingEngine.Map <AppointmentListCriteria>(inModel); mockMappingEngine.Setup(m => m.Map <AppointmentListCriteria>(inModel)).Returns(request); mockDiaryAppointmentWcf.Setup(m => m.List(request)).Throws(exception); SystemUnderTest().FindAppointments(inModel); }
public void FindAppointments_WcfThrowsFaultExceptionValidationFault_ThrowsServiceValidationException() { var exception = new FaultException <ValidationFault>(new ValidationFault { Details = new List <ValidationDetail> { new ValidationDetail { Key = "Key", Message = "Message" } } }); var fromDate = new DateTime(2012, 06, 20); var toDate = fromDate.AddDays(5); var siteCode = "GKGZ"; var inModel = new AppointmentSearchCriteriaModel { AppointmentDateFrom = fromDate, AppointmentDateTo = toDate, SiteCode = siteCode }; var request = MappingEngine.Map <AppointmentListCriteria>(inModel); mockMappingEngine.Setup(m => m.Map <AppointmentListCriteria>(inModel)).Returns(request); mockDiaryAppointmentWcf.Setup(m => m.List(request)).Throws(exception); SystemUnderTest().FindAppointments(inModel); }