public void AddDeleteNewStewardessTest_Returns_CreatedResult_And_Stewardess_ShoudBe_AddedTo_Database_And_Then_ShouldBe_Deleted() { // Arrange MSSQLContext context = new MSSQLContext(); CrewsRepository crewsRepository = new CrewsRepository(); PilotsRepository pilotsRepository = new PilotsRepository(); StewardessesRepository stewardessesRepository = new StewardessesRepository(); CrewingUnitOfWork uow = new CrewingUnitOfWork(crewsRepository, pilotsRepository, stewardessesRepository, context); CrewingService service = new CrewingService(uow); StewardessesController controller = new StewardessesController(mapper.GetDefaultMapper(), service); // add act var newStewardessDTO = new StewardessDTO() { Birth = new DateTime(1985, 5, 12, 0, 0, 0), Name = "Masha", Surname = "Ivanova" }; var addResult = controller.AddStewardess(newStewardessDTO); // add assert Assert.IsInstanceOf <CreatedResult>(addResult); Assert.IsInstanceOf <StewardessDTO>((addResult as CreatedResult).Value); // delete act var addedStewardessDTO = (addResult as CreatedResult).Value as StewardessDTO; var deleteResult = controller.DeleteStewardess(addedStewardessDTO.Id); // delete assert Assert.IsInstanceOf <OkResult>(deleteResult); Assert.IsInstanceOf <NotFoundObjectResult>(controller.GetStewardess(addedStewardessDTO.Id)); }
public void CreatingDeleteCrew_When_Pilot_And_Stewardess_Exist_In_Db_Then_Successfuly_And_Returns_Created_Crew_And_Then_ShouldBe_Deleted() { // Arrange MSSQLContext context = new MSSQLContext(); CrewsRepository crewsRepository = new CrewsRepository(); PilotsRepository pilotsRepository = new PilotsRepository(); StewardessesRepository stewardessesRepository = new StewardessesRepository(); CrewingUnitOfWork uow = new CrewingUnitOfWork(crewsRepository, pilotsRepository, stewardessesRepository, context); CrewingService service = new CrewingService(uow); CrewsController controller = new CrewsController(mapper.GetDefaultMapper(), service); // act (pilots and stewardesses from db seed) var createCrewResult = controller.CreateCrew(1, new List <long> { 1, 2, 3, 4 }); // add assert Assert.IsInstanceOf <CreatedResult>(createCrewResult); Assert.IsInstanceOf <CrewDTO>((createCrewResult as CreatedResult).Value); // delete act var createdCrewDTO = (createCrewResult as CreatedResult).Value as CrewDTO; var deleteResult = controller.DeleteCrew(createdCrewDTO.Id); // delete assert Assert.IsInstanceOf <OkResult>(deleteResult); Assert.IsInstanceOf <NotFoundObjectResult>(controller.GetCrew(createdCrewDTO.Id)); }
public async void AddDeleteNewPilotTest_Returns_CreatedResult_And_Pilot_ShoudBe_AddedTo_Database_And_Then_ShouldBe_Deleted() { // Arrange MSSQLContext context = new MSSQLContext(); CrewsRepository crewsRepository = new CrewsRepository(); PilotsRepository pilotsRepository = new PilotsRepository(); StewardessesRepository stewardessesRepository = new StewardessesRepository(); CrewingUnitOfWork uow = new CrewingUnitOfWork(crewsRepository, pilotsRepository, stewardessesRepository, context); CrewingService service = new CrewingService(uow, mapper.GetDefaultMapper()); PilotsController controller = new PilotsController(mapper.GetDefaultMapper(), service); // add act var newPilotDTO = new PilotDTO() { Birth = new DateTime(1985, 5, 12, 0, 0, 0), ExperienceYears = 15, Name = "Grisha", Surname = "Kramer" }; var addResult = await controller.AddPilot(newPilotDTO); // add assert Assert.IsInstanceOf <CreatedResult>(addResult); Assert.IsInstanceOf <PilotDTO>((addResult as CreatedResult).Value); // delete act var addedPilotDTO = (addResult as CreatedResult).Value as PilotDTO; var deleteResult = controller.DeletePilot(addedPilotDTO.Id); // delete assert Assert.IsInstanceOf <OkResult>(deleteResult); Assert.IsInstanceOf <NotFoundObjectResult>(controller.GetPilot(addedPilotDTO.Id)); }
public void SheduleDeleteDeparture_When_All_Args_IsOk_When_Should_Return_CreatedResult_And_Add_Departure_To_dB_And_Then_Delete() { // Arrange #region ControllerInit MSSQLContext context = new MSSQLContext(); PlaneTypesRepository planeTypesRepository = new PlaneTypesRepository(); PlanesRepository planesRepository = new PlanesRepository(); AircraftUnitOfWork uow = new AircraftUnitOfWork(planesRepository, planeTypesRepository, context); AircraftService service = new AircraftService(uow); CrewsRepository crewsRepository = new CrewsRepository(); PilotsRepository pilotsRepository = new PilotsRepository(); StewardessesRepository stewardessesRepository = new StewardessesRepository(); CrewingUnitOfWork cuow = new CrewingUnitOfWork(crewsRepository, pilotsRepository, stewardessesRepository, context); CrewingService crewingService = new CrewingService(cuow); FlightsRepository flightRepository = new FlightsRepository(); DeparturesRepository departuresRepository = new DeparturesRepository(); TicketsRepository ticketsRepository = new TicketsRepository(); FlightOperationsUnitOfWork flightOpUow = new FlightOperationsUnitOfWork(flightRepository, ticketsRepository, departuresRepository, context); FlightOperationsService flightOpeService = new FlightOperationsService(flightOpUow); AiroportService airportService = new AiroportService(service, crewingService, flightOpeService); AirportController controller = new AirportController(mapper.GetDefaultMapper(), airportService); #endregion var departureDto = new DepartureDTO() { CrewId = crewId, DepartureTime = new DateTime(2018, 8, 10, 11, 0, 0), PlaneId = 2, FlightId = 1 }; var addResult = controller.SheduleDeparture(departureDto); // add assert Assert.IsInstanceOf <CreatedResult>(addResult); Assert.IsInstanceOf <DepartureDTO>((addResult as CreatedResult).Value); // delete act var addedDepartureDTO = (addResult as CreatedResult).Value as DepartureDTO; var deleteResult = controller.DeleteDeparture(addedDepartureDTO.Id); // delete assert Assert.IsInstanceOf <OkResult>(deleteResult); Assert.IsNull(departuresRepository.Get(addedDepartureDTO.Id)); }
public void AddingCrew() { MSSQLContext context = new MSSQLContext(); CrewsRepository crewsRepository = new CrewsRepository(); PilotsRepository pRepository = new PilotsRepository(); StewardessesRepository sRepository = new StewardessesRepository(); CrewingUnitOfWork uow = new CrewingUnitOfWork(crewsRepository, pRepository, sRepository, context); var crew = uow.Crews.Update(new Crew() { Pilot = pRepository.Get(1), Stewardesses = sRepository.GetAll().Take(3).ToList() }); uow.SaveChanges(); crewId = crew.Id; }