public void Null_response_means_address_is_invalid() { var stub = new Mock <ILocationsApiGateway>(); stub.Setup(x => x.GetCoordinatesByAddress(It.IsAny <string>())) .Returns((LocationsClientResponse)null); var api = new LocationsApi(stub.Object); Result <Coordinates> result = api.GetCoordinatesByAddress("Address"); result.IsSuccess.Should().BeFalse(); result.Error.Should().Be("No latitude / longitude available for the address 'Address'"); }
public Envelope NewShipping(string address) { Result <Coordinates> result = _locationsApi.GetCoordinatesByAddress(address); if (result.IsFailure) { return(Envelope.Error(result.Error)); } Coordinates coordinates = result.Value; var delivery = new Delivery(address, coordinates); SaveDelivery(delivery); _messageBus.SendNewShippingMessage(delivery.Id, coordinates); return(Envelope.Ok(delivery.Id)); }