[Test] // behaviour test public void Create_When_entity_is_created_Then_it_makes_calls_to_repository_and_unit_of_work() { // Arrange var flightDTOToCreate = new FlightDTO() { Number = "AABBCC", DeparturePlace = "from place", DepartureTime = new DateTime(1, 1, 1, 12, 0, 0), ArrivalPlace = "to place", ArrivalTime = new DateTime(1, 1, 1, 18, 0, 0) }; var flightRepositoryFake = A.Fake <IFlightRepository>(); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Flight>()).Returns(flightRepositoryFake); var flightService = new FlightService(unitOfWorkFake, AlwaysValidValidator); // Act var result = flightService.Create(flightDTOToCreate); // Assert. Just behaviour A.CallTo(() => flightRepositoryFake.Create(A <Flight> ._)).MustHaveHappenedOnceExactly(); A.CallTo(() => unitOfWorkFake.Set <Flight>()).MustHaveHappenedOnceExactly(); A.CallTo(() => unitOfWorkFake.SaveChanges()).MustHaveHappenedOnceExactly(); }
public void Create_AddsSuccessfulyToDatabase() { //Arrange var data = flightView; var Flights = flights.AsQueryable(); var mockSet = new Mock <DbSet <Flight> >(); mockSet.As <IQueryable <Flight> >().Setup(m => m.Provider).Returns(Flights.Provider); mockSet.As <IQueryable <Flight> >().Setup(m => m.Expression).Returns(Flights.Expression); mockSet.As <IQueryable <Flight> >().Setup(m => m.ElementType).Returns(Flights.ElementType); mockSet.As <IQueryable <Flight> >().Setup(m => m.GetEnumerator()).Returns(() => Flights.GetEnumerator()); var mockContext = new Mock <FlightManagerDbContext>(); mockContext.Setup(x => x.Flights).Returns(mockSet.Object); //Act var service = new FlightService(mockContext.Object); service.Create(data); //Assert mockContext.Verify(x => x.SaveChanges(), Times.Once()); }
[Test] // behaviour test public void Create_When_entity_is_invalid_Then_it_makes_no_calls_to_repository_and_unit_of_work() { // Arrange var flightDTOToCreate = new FlightDTO() { Number = "AABBCC", DeparturePlace = "from place", DepartureTime = new DateTime(1, 1, 1, 12, 0, 0), ArrivalPlace = "to place", ArrivalTime = new DateTime(1, 1, 1, 18, 0, 0) }; var flightRepositoryFake = A.Fake <IFlightRepository>(); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Flight>()).Returns(flightRepositoryFake); var flightService = new FlightService(unitOfWorkFake, AlwaysInValidValidator); // Act + Assert var exception = Assert.Throws <BadRequestException>(() => flightService.Create(flightDTOToCreate)); // Assert. Just behaviour A.CallTo(() => flightRepositoryFake.Create(A <Flight> ._)).MustNotHaveHappened(); A.CallTo(() => unitOfWorkFake.FlightRepository).MustNotHaveHappened(); A.CallTo(() => unitOfWorkFake.Set <Flight>()).MustNotHaveHappened(); A.CallTo(() => unitOfWorkFake.SaveChanges()).MustNotHaveHappened(); }
public void CreateTestFixture() { //Create a mock object of a Flight class var mockFlight = new Mock <Flight>(); var mockFlightServices = new Mock <IFlight>(); //Mock the properties of mockFlight mockFlight.SetupProperty(client => client.Id, 1) .SetupProperty(client => client.AirPlaneId, 1) .SetupProperty(client => client.ArrivalAirportId, 1) .SetupProperty(client => client.DepartureAirportId, 1) .SetupProperty(client => client.AddedDate, System.DateTime.Now) .SetupProperty(client => client.ModifiedDate, System.DateTime.Now);; //Configure dummy method so that it return true when it gets any string as parameters to the method mockFlightServices.Setup(r => r.Create(It.IsAny <Flight>())).Throws(new Exception("TestException")); IFlight FlightHelpersServices = new FlightService(_unitOfWork); //Use the mock object of FlightHelpersServices instead of actual object FlightHelpersServices.Create(mockFlight.Object); //Verify that it return true //Verify that the mockFlightHelpersServices AddOrUpdate methods gets called exactly once when Flight is passed as parameters mockFlightServices.Verify(client => client.Create(It.IsAny <Flight>())); }
public async Task Create_WhenFlightNull_ThenReturnExeption() { var Flights = new IFakeRepository <Flight>(); var context = new IFakeUnitOfFactory(); FlightDto FlightDto = null; FlightService service = new FlightService(context); FlightDto FlightDtoSaved = await service.Create(FlightDto); }
public ActionResult <Flight> Create([FromBody] Flight newIng) { try { return(Ok(_service.Create(newIng))); } catch (Exception e) { return(BadRequest(e.Message)); } }
public void Create_When_entity_is_created_Then_new_flight_with_new_id_is_returned() { // Arrange var flightMock = new Flight { Id = 1, Number = "AABBCC", DeparturePlace = "from place", DepartureTime = new DateTime(1, 1, 1, 12, 0, 0), ArrivalPlace = "to place", ArrivalTime = new DateTime(1, 1, 1, 18, 0, 0) }; var flightDTOToCreate = new FlightDTO { Number = "AABBCC", DeparturePlace = "from place", DepartureTime = new DateTime(1, 1, 1, 12, 0, 0), ArrivalPlace = "to place", ArrivalTime = new DateTime(1, 1, 1, 18, 0, 0) }; var expectedFlightDTO = new FlightDTO { Id = 1, Number = "AABBCC", DeparturePlace = "from place", DepartureTime = new DateTime(1, 1, 1, 12, 0, 0), ArrivalPlace = "to place", ArrivalTime = new DateTime(1, 1, 1, 18, 0, 0) }; var flightRepositoryFake = A.Fake <IFlightRepository>(); A.CallTo(() => flightRepositoryFake.Create(A <Flight> ._)).Returns(flightMock); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Flight>()).Returns(flightRepositoryFake); var flightService = new FlightService(unitOfWorkFake, AlwaysValidValidator); // Act var result = flightService.Create(flightDTOToCreate); // Assert Assert.AreEqual(expectedFlightDTO.Id, result.Id); Assert.AreEqual(expectedFlightDTO.Number, result.Number); Assert.AreEqual(expectedFlightDTO.DeparturePlace, result.DeparturePlace); Assert.AreEqual(expectedFlightDTO.DepartureTime, result.DepartureTime); Assert.AreEqual(expectedFlightDTO.ArrivalPlace, result.ArrivalPlace); Assert.AreEqual(expectedFlightDTO.ArrivalTime, result.ArrivalTime); }
public async Task SubmitCreate(string dep, DateTime depDate, string arr, DateTime arrDate) { Flight flight = new Flight(); flight.DeperturePlace = dep; flight.DepartureTime = depDate; flight.ArrivalPlace = arr; flight.ArrivalTime = arrDate; await fs.Create(flight); this.Frame.Navigate(typeof(Flights)); }
public void Create_WhenDtoIsEmpty_ThenThrowValidExeption() { // Arrange var dto = new FlightDto() { }; var service = new FlightService(unitOfWorkFake, mapper, validator); // Act // Assert Assert.Throws <ValidationException>(() => service.Create(dto)); }
public async Task Create() { Flight flight = await flightService.Create(Flight); Flight = new Flight(); List <Flight> tempFlights = await flightService.GetAll(); Flights = new ObservableCollection <Flight>(); foreach (var item in tempFlights) { Flights.Add(item); } NotifyPropertyChanged(() => Flights); }
public void FlightService_CheckInsert_Created() { // Arrange var mock = new Mock <IFlightRepository>(); mock.Setup(repo => repo.Create(StubsObjects.Flight.ToEntity())) .Returns(() => Task.CompletedTask); var service = new FlightService(mock.Object); // Act var result = service.Create(StubsObjects.Flight).Result; // Assert Assert.Equal(StatusCode.Created, result); }
public async Task Create_WhenValidFlight_ThenReturnFlight() { var Flights = new IFakeRepository <Flight>(); var context = new IFakeUnitOfFactory(); FlightDto flightDto = new FlightDto() { Id = 154, ArrivalPoint = "Kiev" }; FlightService service = new FlightService(context); FlightDto FlightDtoSaved = await service.Create(flightDto); Assert.AreEqual(flightDto.ArrivalPoint, FlightDtoSaved.ArrivalPoint); Assert.AreEqual(flightDto.Id, FlightDtoSaved.Id); }
public async Task CreateFlight_WhenFlightValid_ReturnNewFlight() { FlightDto flight = new FlightDto() { ArrivalPoint = "Test", DeparturePoint = "Test", ArrivalTime = new TimeSpan(), DepartureTime = new TimeSpan(), Tickets = new List <TicketDto>() }; FlightDto flightDtoSaved = await serviceFlight.Create(flight); Assert.AreEqual(flight.ArrivalPoint, flight.ArrivalPoint); Assert.AreEqual(flight.DeparturePoint, flight.DeparturePoint); bool result = await serviceFlight.Delete <Aircraft>(aircr => aircr.Id == flightDtoSaved.Id); Assert.IsTrue(result); }
public void Create_WhenDtoIsPassed_ThenReturnedTheSameWithCreatedId() { // Arrange var ticketsId = new List <Guid> { Guid.NewGuid() }; var dto = new FlightDto() { Name = "AAA-111", Destinition = "B", DeparturePoint = "A", ArrivalTime = new DateTime(2018, 07, 17, 13, 0, 0), DepartureTime = new DateTime(2018, 07, 17, 14, 0, 0), TicketsId = ticketsId }; A.CallTo(() => unitOfWorkFake.TicketRepository.GetAll()) .Returns(new List <Ticket> { new Ticket { Id = ticketsId[0] } }); var service = new FlightService(unitOfWorkFake, mapper, alwaysValidValidator); // Act var returnedDto = service.Create(dto); // Assert Assert.True(returnedDto.Id != default(Guid)); Assert.AreEqual(dto.Name, returnedDto.Name); Assert.AreEqual(dto.Destinition, returnedDto.Destinition); Assert.AreEqual(dto.DepartureTime, returnedDto.DepartureTime); Assert.AreEqual(dto.DeparturePoint, returnedDto.DeparturePoint); Assert.AreEqual(dto.TicketsId.Count, returnedDto.TicketsId.Count); foreach (var item in dto.TicketsId) { Assert.Contains(item, returnedDto.TicketsId); } }
public void FlightService_CheckInsert_ThrowNameException() { // Arrange var mock = new Mock <IFlightRepository>(); mock.Setup(repo => repo.Create(new FlightEntity())) .Returns(() => Task.CompletedTask); var service = new FlightService(mock.Object); // Act var ex = Assert.ThrowsAnyAsync <TimeException>(() => service.Create(new Flight() { ArrivalTimeUtc = DateTime.Now, DepartureTimeUtc = DateTime.Now.AddHours(1) })); // Assert Assert.Equal("Check the correctness of what you entered date interval.", ex.Result.Message); }
public void Create_When_FlightModel_is_not_valid_Then_throws_ValidatorException() { var tickets = service.Get(1).Tickets; var flight1 = new FlightDto() { ID = -1, DeparturePoint = "Kyiv", DepartureTime = DateTime.Now, Destination = "Lviv", DestinationTime = DateTime.Now.AddHours(2), Number = Guid.NewGuid(), Tickets = tickets }; var flight2 = new FlightDto() { DepartureTime = DateTime.Now, Destination = "Lviv", DestinationTime = DateTime.Now.AddHours(2), Number = Guid.NewGuid(), Tickets = tickets }; var flight3 = new FlightDto() { DeparturePoint = "Kyiv", DepartureTime = DateTime.Now, Destination = "Lviv", DestinationTime = DateTime.Now, Number = Guid.NewGuid(), Tickets = tickets }; var flight4 = new FlightDto() { DeparturePoint = "Kyiv", DepartureTime = DateTime.Now, Destination = "Kyiv", DestinationTime = DateTime.Now.AddHours(2), Number = Guid.NewGuid(), Tickets = tickets }; Assert.Throws <FluentValidation.ValidationException>(() => service.Create(flight1)); Assert.Throws <FluentValidation.ValidationException>(() => service.Create(flight2)); Assert.Throws <FluentValidation.ValidationException>(() => service.Create(flight3)); Assert.Throws <FluentValidation.ValidationException>(() => service.Create(flight4)); }
public void Create_When_entity_is_invalid_Then_bad_request_exception_is_thrown() { // Arrange var flightMock = new Flight() { Id = 2, Number = "AABBCC", DeparturePlace = "from place", DepartureTime = new DateTime(1, 1, 1, 12, 0, 0), ArrivalPlace = "to place", ArrivalTime = new DateTime(1, 1, 1, 18, 0, 0) }; var flightDTOToCreate = new FlightDTO() { Number = "AABBCC", DeparturePlace = "from place", DepartureTime = new DateTime(1, 1, 1, 12, 0, 0), ArrivalPlace = "to place", ArrivalTime = new DateTime(1, 1, 1, 18, 0, 0) }; var flightRepositoryFake = A.Fake <IFlightRepository>(); A.CallTo(() => flightRepositoryFake.Create(A <Flight> ._)).Returns(flightMock); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Flight>()).Returns(flightRepositoryFake); var flightService = new FlightService(unitOfWorkFake, AlwaysInValidValidator); // Act + Assert var exception = Assert.Throws <BadRequestException>(() => flightService.Create(flightDTOToCreate), ""); Assert.AreEqual(exception.Message, "Is Invalid"); }
async void Create() { await flightservice.Create(Flight); await LoadEntity().ConfigureAwait(false); }
async void Create() { await _flightService.Create(Flight); await LoadFlights().ConfigureAwait(false); }
public void Post([FromBody] FlightDTO value) { flightService.Create(value); }