public async Task get_property_details_by_reference() { var mockLogger = new Mock <ILoggerAdapter <PropertyActions> >(); var request = new ByPropertyRefRequest(); var response = new PropertyGetResponse() { Success = true, Property = new PropertyDto() { ShortAddress = "Front Office, Robert House, 6 - 15 Florfield Road", PostCodeValue = "E8 1DT", Reference = "43453543" } }; var fakeService = new Mock <IHackneyPropertyService>(); fakeService.Setup(service => service.GetPropertyByRefAsync(request)) .ReturnsAsync(response); var fakeRequestBuilder = new Mock <IHackneyPropertyServiceRequestBuilder>(); fakeRequestBuilder.Setup(service => service.BuildByPropertyRefRequest("43453543")).Returns(request); PropertyActions propertyActions = new PropertyActions(fakeService.Object, fakeRequestBuilder.Object, mockLogger.Object); var results = await propertyActions.FindPropertyDetailsByRef("43453543"); var property = new { address = "Front Office, Robert House, 6 - 15 Florfield Road", postcode = "E8 1DT", propertyReference = "43453543", maintainable = false }; Assert.Equal(property, results); }
public Task <PropertyGetResponse> GetPropertyByRefAsync(ByPropertyRefRequest request) { _logger.LogInformation($"HackneyPropertyService/GetPropertyByRefAsync(): Sent request to upstream PropertyServiceClient (Property reference: {request.PropertyReference})"); var response = _client.GetPropertyByRefAsync(request); _logger.LogInformation($"HackneyPropertyService/GetPropertyByRefAsync(): Received response from upstream PropertyServiceClient (Property reference: {request.PropertyReference})"); return(response); }
public async Task get_property_details_by_reference_raises_an_exception_if_the_service_responds_with_an_error() { var mockLogger = new Mock <ILoggerAdapter <PropertyActions> >(); var request = new ByPropertyRefRequest(); var response = new PropertyGetResponse { Success = false, Property = new PropertyDto() }; var fakeService = new Mock <IHackneyPropertyService>(); fakeService.Setup(service => service.GetPropertyByRefAsync(It.IsAny <ByPropertyRefRequest>())) .ReturnsAsync(response); var fakeRequestBuilder = new Mock <IHackneyPropertyServiceRequestBuilder>(); fakeRequestBuilder.Setup(service => service.BuildByPropertyRefRequest("525252525")).Returns(request); PropertyActions propertyActions = new PropertyActions(fakeService.Object, fakeRequestBuilder.Object, mockLogger.Object); await Assert.ThrowsAsync <HackneyRepairs.Actions.PropertyServiceException>(async() => await propertyActions.FindPropertyDetailsByRef("525252525")); }
public Task <PropertyGetResponse> GetPropertyByRefAsync(ByPropertyRefRequest request) { switch (request.PropertyReference) { case "525252525": return(Task.Run(() => new PropertyGetResponse() { Property = new PropertyDto { ShortAddress = "Back Office, Robert House, 6 - 15 Florfield Road ", PostCodeValue = "E8 1DT", Reference = "525252525" }, Success = true })); case "425252525": return(Task.Run(() => new PropertyGetResponse() { Property = null, Success = false, })); case "42525252512": return(Task.Run(() => new PropertyGetResponse() { Property = null, Success = true, })); default: var response = new PropertyGetResponse() { Property = new PropertyDto(), Success = true }; return(Task.Run(() => response)); } }