public async Task OngoingRides() { await DbContext.ClearAsync(); await DbContext.AddDummyRideAsync(); var response = await Client.GetAsync("/api/rides/ongoing"); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); var rides = JsonConvert.DeserializeObject <List <TaxiRide> >(await response.Content.ReadAsStringAsync()); Assert.AreEqual(1, rides.Count); }
public async Task CompletedRides() { await DbContext.ClearAsync(); var(_, _, rideID) = await DbContext.AddDummyRideAsync(); await DbContext.EndRideAsync(rideID, 99m); var response = await Client.GetAsync("/api/rides/completed"); Assert.Equal(HttpStatusCode.OK, response.StatusCode); var rides = JsonConvert.DeserializeObject <List <TaxiRide> >(await response.Content.ReadAsStringAsync()); Assert.Single(rides); }
public async Task Initialize() { await DbContext.ClearAsync(); await DbContext.AddDummyRideAsync(); var(_, _, rideID) = await DbContext.AddDummyRideAsync(); await DbContext.EndRideAsync(rideID, 99m); var vm = new MainWindowViewModel(Client); await vm.InitAsync(); Assert.AreEqual(2, vm.Taxis.Count); Assert.AreEqual(2, vm.Drivers.Count); Assert.AreEqual(1, vm.OngoingRides.Count); Assert.AreEqual(1, vm.CompletedRides.Count); }
public async Task EndRide() { const decimal charge = 99m; var(_, _, rideID) = await DbContext.AddDummyRideAsync(); var endRide = new EndRideDto { Charge = charge }; var body = new StringContent(JsonConvert.SerializeObject(endRide), Encoding.UTF8, "application/json"); var response = await Client.PostAsync($"/api/rides/{rideID}", body); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); var newRide = JsonConvert.DeserializeObject <TaxiRide>(await response.Content.ReadAsStringAsync()); Assert.AreEqual(charge, newRide.Charge); Assert.IsTrue(newRide.End <= DateTime.Now && newRide.End >= DateTime.Now.AddSeconds(-5)); }
public async Task EndRide() { await DbContext.ClearAsync(); await DbContext.AddDummyRideAsync(); var hasNotified = false; var vm = new MainWindowViewModel(Client); ((INotifyPropertyChanged)vm).PropertyChanged += (_, ea) => hasNotified = true;; await vm.InitAsync(); vm.SelectedOngoingRide = vm.OngoingRides.First(); vm.Charge = 99m; await vm.EndRideAsync(); var ongoingRides = await DbContext.Rides.CountAsync(r => !r.Charge.HasValue || !r.End.HasValue); Assert.AreEqual(0, ongoingRides); Assert.IsTrue(hasNotified); }