public async Task SubmitCalculatePriceRequest_RecievesSuccessfullResponse_ReturnsNewPriceResponse() { var fakeHttpResponse = new HttpResponseMessage() { StatusCode = HttpStatusCode.OK, Content = new StringContent(JsonConvert.SerializeObject(new { price = 100.00, }), Encoding.UTF8, "application/json"), }; var fakeHttpMessageHandler = new FakeHttpMessageHandler(fakeHttpResponse); var fakeHttpClient = new HttpClient(fakeHttpMessageHandler); var uut = new AzureApiService(fakeHttpClient, _fakeSessionService); var response = await uut.SubmitCalculatePriceRequest(_fakeCalculatePriceRequest); Assert.Multiple(() => { Assert.That(response, Is.Not.Null); Assert.That(response, Is.TypeOf<PriceResponse>()); Assert.That(response.Body, Is.Not.Null); Assert.That(response.Body, Is.TypeOf<PriceResponse.PriceResponseBody>()); }); }
public async Task SubmitCalculatePriceRequest_ReceivesBadRequestResponse_ReturnsError() { var fakeHttpResponse = new HttpResponseMessage() { StatusCode = HttpStatusCode.BadRequest, Content = new StringContent(JsonConvert.SerializeObject(new { errors = new Dictionary<string, IList<string>>() { { "error", new List<string>() { "Address not valid" } } }, }), Encoding.UTF8, "application/json"), }; var fakeHttpMessageHandler = new FakeHttpMessageHandler(fakeHttpResponse); var fakeHttpClient = new HttpClient(fakeHttpMessageHandler); var uut = new AzureApiService(fakeHttpClient, _fakeSessionService); var response = await uut.SubmitCalculatePriceRequest(_fakeCalculatePriceRequest); Assert.Multiple(() => { Assert.That(response, Is.Not.Null); Assert.That(response, Is.TypeOf<PriceResponse>()); Assert.That(response.Body, Is.Not.Null); Assert.That(response.Body, Is.TypeOf<PriceResponse.PriceResponseBody>()); Assert.That(response.GetErrors().Count, Is.EqualTo(1)); }); }
public async Task SubmitCreateRideRequest_ReceivesSuccessfullResponse_ReturnsNewCreateRideResponse() { var fakeHttpResponse = new HttpResponseMessage() { StatusCode = HttpStatusCode.OK, Content = new StringContent(JsonConvert.SerializeObject(new { id = 1, startDestination = new { cityName = "Test", postalCode = 1234, streetName = "Tester", streetNumber = 1 }, endDestination = new { cityName = "Tester", postalCode = 4321, streetName = "Test", streetNumber = 2 }, departureTime = DateTime.Now.Add(new TimeSpan(0, 0, 30)), confirmationDeadline = DateTime.Now.Subtract(new TimeSpan(0, 2, 0)), passengerCount = 1, createdOn = DateTime.Now, price = 100, status = 0, }),Encoding.UTF8,"application/json"), }; var fakeHttpMessageHandler = new FakeHttpMessageHandler(fakeHttpResponse); var fakeHttpClient=new HttpClient(fakeHttpMessageHandler); var uut = new AzureApiService(fakeHttpClient,_fakeSessionService); var response = await uut.SubmitCreateRideRequest(_fakeCreateRideRequest); Assert.Multiple(() => { Assert.That(response,Is.Not.Null); Assert.That(response,Is.TypeOf<CreateRideResponse>()); Assert.That(response.Body,Is.Not.Null); Assert.That(response.Body, Is.TypeOf<CreateRideResponse.CreateRideResponseBody>()); }); }
public void SetUp() { _fakeCreateCustomerRequest = Substitute.For<ICreateCustomerRequest>(); _fakeLoginRequest = Substitute.For<ILoginRequest>(); _fakeSessionService = Substitute.For<ISessionService>(); _fakeHttpMessageHandler = new FakeHttpMessageHandler(); _fakeHttpClient = new HttpClient(_fakeHttpMessageHandler); _uut = new AzureApiService(_fakeHttpClient, _fakeSessionService); _fakeCalculatePriceRequest = Substitute.For<ICalculatePriceRequest>(); _fakeCreateRideRequest = Substitute.For<ICreateRideRequest>(); }