public async Task EditAsync_ShouldWorkCorrectly() { // Arrange var context = ApplicationDbContextInMemoryFactory.InitializeContext(); var seeder = new BusesServiceTestsSeeder(); await seeder.SeedBusAsync(context); var busRepository = new EfDeletableEntityRepository <Bus>(context); var service = new BusesService(busRepository); var bus = busRepository.All().First(); var model = new BusViewModel { Id = bus.Id, BusNumber = bus.BusNumber, AvailableSeats = bus.AvailableSeats, PricePerPerson = bus.PricePerPerson, ReservationType = bus.ReservationType, StartPointId = bus.StartPointId, StartPointStation = bus.StartPointStation, EndPointId = bus.EndPointId, EndPointStation = bus.EndPointStation, DepartureDateTime = bus.DepartureDateTime, TravellingTime = bus.TravellingTime, }; model.BusNumber = "EditedBusNumber"; model.AvailableSeats = 20; model.PricePerPerson = 50; model.ReservationType = ReservationType.Bus; model.StartPointId = 1; model.StartPointStation = "EditedStartStation"; model.EndPointId = 2; model.EndPointStation = "EditedEndStation"; model.DepartureDateTime = new DateTime(2020, 03, 03, 13, 00, 00); model.TravellingTime = new TimeSpan(30, 30, 00); // Act await service.EditAsync(model.Id, model); var actualResult = busRepository.All().First(); var expectedResult = model; // Assert Assert.True(expectedResult.BusNumber == actualResult.BusNumber); Assert.True(expectedResult.AvailableSeats == actualResult.AvailableSeats); Assert.True(expectedResult.PricePerPerson == actualResult.PricePerPerson); Assert.True(expectedResult.ReservationType == actualResult.ReservationType); Assert.True(expectedResult.StartPointId == actualResult.StartPointId); Assert.True(expectedResult.StartPointStation == actualResult.StartPointStation); Assert.True(expectedResult.EndPointId == actualResult.EndPointId); Assert.True(expectedResult.EndPointStation == actualResult.EndPointStation); Assert.True(expectedResult.DepartureDateTime == actualResult.DepartureDateTime); Assert.True(expectedResult.TravellingTime == actualResult.TravellingTime); }
public async Task IsExistingMethod_ShouldReturnFalseIfFlightNotExists() { // Arrange var context = ApplicationDbContextInMemoryFactory.InitializeContext(); var seeder = new BusesServiceTestsSeeder(); await seeder.SeedBusAsync(context); var busRepository = new EfDeletableEntityRepository <Bus>(context); var service = new BusesService(busRepository); // Act var actualResult = service.Exists("BusId"); var expectedResult = false; // Assert Assert.True(actualResult == expectedResult); }
public async Task DeleteAsync_ShouldSuccessfullyDelete() { // Arrange var context = ApplicationDbContextInMemoryFactory.InitializeContext(); var seeder = new BusesServiceTestsSeeder(); await seeder.SeedBusAsync(context); var busRepository = new EfDeletableEntityRepository <Bus>(context); var service = new BusesService(busRepository); var busId = busRepository.All().First().Id; // Act var busesCount = busRepository.All().Count(); await service.DeleteAsync(busId); var actualResult = busRepository.All().Count(); var expectedResult = busesCount - 1; // Assert Assert.True(actualResult == expectedResult); }