Exemple #1
0
        public void TestSetUp()
        {
            var connection = @"Server=DESKTOP-DMYTRO\SQLEXPRESS;Initial Catalog=Academy;Trusted_Connection=True;ConnectRetryCount=0";
            DbContextOptionsBuilder <MyContext> t = new DbContextOptionsBuilder <MyContext>();

            t.UseSqlServer(connection);
            mc = new MyContext(t.Options);

            CrewRepository       crewRepository       = new CrewRepository(mc);
            PilotRepository      pilotRepository      = new PilotRepository(mc);
            StewardessRepository stewardessRepository = new StewardessRepository(mc);
            FlightRepository     flightRepository     = new FlightRepository(mc);
            TicketRepository     ticketRepository     = new TicketRepository(mc);
            TakeOffRepository    takeOffRepository    = new TakeOffRepository(mc);
            PlaneRepository      planeRepository      = new PlaneRepository(mc);
            PlaneTypeRepository  planeTypeRepository  = new PlaneTypeRepository(mc);

            UnitOfWork unitOfWork = new UnitOfWork(crewRepository, flightRepository, pilotRepository,
                                                   planeRepository, planeTypeRepository, stewardessRepository,
                                                   takeOffRepository, ticketRepository, mc);

            CrewService       crewService       = new CrewService(unitOfWork);
            FlightService     flightService     = new FlightService(unitOfWork);
            StewardessService stewardessService = new StewardessService(unitOfWork);
            PilotService      pilotService      = new PilotService(unitOfWork);
            TicketService     ticketService     = new TicketService(unitOfWork);
            TakeOffService    takeOffService    = new TakeOffService(unitOfWork);
            PlaneService      planeService      = new PlaneService(unitOfWork);
            PlaneTypeService  planeTypeService  = new PlaneTypeService(unitOfWork);



            pilotController  = new PilotController(pilotService);
            flightController = new FlightController(flightService);
        }
Exemple #2
0
 public CrewDataService(IMapper mapper,
                        CrewRepository repository,
                        AbstractValidator <CrewDto> validator)
 {
     _mapper     = mapper;
     _repository = repository;
     _validator  = validator;
 }
Exemple #3
0
        public void GetById_Negative_ArgumentException()
        {
            //Arrange
            ICrewRepository crewRepository = new CrewRepository();

            const int NegativeId = -1;

            //Act & Assert
            Assert.ThrowsAsync <ArgumentException>(() => crewRepository.GetById(NegativeId));
        }
Exemple #4
0
        public void GetById_Negative_ArgumentException()
        {
            //Arrange
            ICrewRepository crewRepository = new CrewRepository();
            ICrewService    crewService    = new CrewService(crewRepository);
            CrewController  crewController = new CrewController(crewService);

            const int NegativeId = -1;

            //Act & Assert
            Assert.ThrowsExceptionAsync <ArgumentException>(() => crewController.GetById(NegativeId));
        }
Exemple #5
0
 public UnitOfWork(
     AirportDbContext dbContext
     )
 {
     _dbContext           = dbContext;
     AirhostessRepository = new AirhostessRepository(dbContext);
     CrewRepository       = new CrewRepository(dbContext);
     DepartureRepository  = new DepartureRepository(dbContext);
     FlightRepository     = new FlightRepository(dbContext);
     PilotRepository      = new PilotRepository(dbContext);
     PlaneRepository      = new PlaneRepository(dbContext);
     PlaneTypeRepository  = new PlaneTypeRepository(dbContext);
     TicketRepository     = new TicketRepository(dbContext);
 }
Exemple #6
0
        public async Task GetById_ValidId_ValidCrew()
        {
            //Arrange
            ICrewRepository crewRepository = new CrewRepository();

            Crew expectedCrew = new Crew {
                Id = 1, Name = "Main"
            };

            //Act
            Crew actualCrew = await crewRepository.GetById(expectedCrew.Id);

            //Assert
            Assert.AreEqual(expectedCrew.Id, actualCrew.Id);
            Assert.AreEqual(expectedCrew.Name, actualCrew.Name);
        }
Exemple #7
0
        private async void MainWindow_OnLoaded(object sender, RoutedEventArgs args)
        {
            // Here we train the cognitive Service endpoint
            try
            {
                try
                {
                    // Delete previously created PersonGroup
                    await _faceServiceClient.DeletePersonGroupAsync(PersonGroupId);
                }
                catch
                {
                    // Ignored
                }

                // Create the PersonGroup
                await _faceServiceClient.CreatePersonGroupAsync(PersonGroupId, PersonGroupName);

                foreach (var imagePath in Directory.GetFiles(@"../../Assets/CrewPhotos", "*.jpg"))
                {
                    var member = CrewRepository.FromPhoto(Path.GetFileName(imagePath));
                    // Create the Person
                    var personResult = await _faceServiceClient.CreatePersonAsync(PersonGroupId, name : member.Name);

                    using (Stream s = File.OpenRead(imagePath))
                    {
                        // Add the Person to the Group
                        await _faceServiceClient.AddPersonFaceAsync(PersonGroupId, personResult.PersonId, s);
                    }
                }
            }
            catch (Exception e)
            {
                Debug.WriteLine(e.Message);
            }
            finally
            {
                IdentifyButton.IsEnabled = true;
                ProgressGrid.Visibility  = Visibility.Collapsed;
            }
        }
Exemple #8
0
        public void GetById_When_Calling_From_Generic_Service_Then_Receive_Entity_ById(int id)
        {
            var context = new Mock <AirportContext>();

            context.Setup(x => x.Crews).Returns(mockSet.Object);
            var rep = new CrewRepository(context.Object);

            mockUoW.Setup(x => x.GetRepository <Crew>()).Returns(rep);
            rep.Update(new Crew()
            {
                Id = 1
            });
            var res = rep.GetById(1);

            //Assert
            Assert.AreEqual(res.Id, 1);
            //IMapper mapper;
            //amc = new AutoMapperConfiguration();
            //amc.Configure();
            //FUow = new FakeUnitOfWork(context);

            //var repos = FUow.GetRepository<Crew>();
            //var c = repos.GetById(4);
            //service = new BaseService(FUow);

            //mapper = amc.Configure().CreateMapper();

            //crew = new CrewDto()
            //{
            //    Id = 1,
            //    FlightAttendants = new List<FlightAttendant> { new FlightAttendant() { Id = 4, Birthday = new DateTime(), Name = "Monica", Surname = "Mancini" } },
            //    Pilot = new Pilot() { Id = 1, Name = "Karlos", Surname = "Gonsales", Birthday = new DateTime(), Experience = 4 }

            //};

            //var mapped = mapper.Map<CrewDto, Crew>(crew);

            //Crew dr = service.GetById<Crew>(mapped.Id);

            //Assert.AreEqual(dr.Id, id);
        }
Exemple #9
0
        /// <summary>
        /// Populate DB with movie returned by API
        /// </summary>
        /// <param name="infos">Movie information</param>
        /// <param name="credit">Cast and crew linked to movie</param>
        /// <param name="originalName">Orignial Name of the movie</param>
        /// <param name="originalFilePath">Original name of the file</param>
        private void PopulateDB(Movie infos, Credits credit, string originalName, string originalFilePath)
        {
            MovieRepository      _movieRepo      = new MovieRepository();
            CollectionRepository _collectionRepo = new CollectionRepository();
            CrewRepository       _crewrepo       = new CrewRepository();
            CastRepository       _castrepo       = new CastRepository();
            CompanyRepository    _companyrepo    = new CompanyRepository();
            CountryRepository    _countryrepo    = new CountryRepository();
            GenreRepository      _genrerepo      = new GenreRepository();
            LanguageRepository   _languagerepo   = new LanguageRepository();


            bool collectionAdded = false;

            if (infos.BelongsToCollection != null)
            {
                fmmCollection collection = new fmmCollection {
                    id     = infos.BelongsToCollection.Id,
                    name   = infos.BelongsToCollection.Name,
                    poster = infos.BelongsToCollection.PosterPath
                };
                _collectionRepo.Insert(collection);

                collectionAdded = true;
            }

            fmmMovie movie = new fmmMovie {
                id          = infos.Id,
                imdbid      = infos.ImdbId,
                title       = infos.Title,
                ogtitle     = originalName,
                filename    = Path.GetFileName(originalFilePath),
                filepath    = originalFilePath,
                adult       = infos.Adult,
                budget      = infos.Budget,
                homepage    = infos.Homepage,
                runtime     = infos.Runtime,
                tagline     = infos.Tagline,
                voteaverage = infos.VoteAverage,
                oglanguage  = infos.OriginalLanguage,
                overview    = infos.Overview,
                popularity  = infos.Popularity,
                poster      = infos.PosterPath,
                releasedate = infos.ReleaseDate.ToString().Substring(0, 10)
            };

            if (collectionAdded)
            {
                movie.fk_collection = infos.BelongsToCollection.Id;
            }

            bool movieAdded = _movieRepo.Insert(movie);

            foreach (Crew crew in credit.Crew)
            {
                var ncrew = new fmmCrew {
                    id         = crew.Id,
                    creditid   = crew.CreditId,
                    name       = crew.Name,
                    image      = crew.ProfilePath,
                    department = crew.Department,
                    job        = crew.Job
                };

                _crewrepo.Insert(ncrew, movie.id);
            }

            foreach (Cast cast in credit.Cast)
            {
                var ncast = new fmmCast {
                    id        = cast.Id,
                    castid    = cast.CastId,
                    creditid  = cast.CreditId,
                    name      = cast.Name,
                    image     = cast.ProfilePath,
                    character = cast.Character,
                    aorder    = cast.Order
                };

                _castrepo.Insert(ncast, movie.id);
            }

            foreach (ProductionCompany company in infos.ProductionCompanies)
            {
                var ncompany = new fmmCompany {
                    id   = company.Id,
                    name = company.Name,
                };

                _companyrepo.Insert(ncompany, movie.id);
            }

            foreach (ProductionCountry country in infos.ProductionCountries)
            {
                var ncountry = new fmmCountry {
                    name = country.Name,
                };

                _countryrepo.Insert(ncountry, movie.id);
            }

            foreach (Genre genre in infos.Genres)
            {
                var ngenre = new fmmGenre {
                    id   = genre.Id,
                    name = genre.Name,
                };

                _genrerepo.Insert(ngenre, movie.id);
            }


            foreach (SpokenLanguage language in infos.SpokenLanguages)
            {
                var nlanguage = new fmmLanguage {
                    name = language.Name,
                };

                _languagerepo.Insert(nlanguage, movie.id);
            }
        }
        public void Seed()
        {
            Ticket ticket1 = new Ticket
            {
                Id         = 1,
                RaceNumber = 2,
                Price      = 1000
            };

            Ticket ticket2 = new Ticket
            {
                Id         = 2,
                RaceNumber = 1,
                Price      = 1020
            };

            Ticket ticket3 = new Ticket
            {
                Id         = 3,
                RaceNumber = 4,
                Price      = 1040
            };

            Ticket ticket4 = new Ticket
            {
                Id         = 4,
                RaceNumber = 3,
                Price      = 1060
            };

            Ticket ticket5 = new Ticket
            {
                Id         = 4,
                RaceNumber = 2,
                Price      = 1060
            };

            TicketRepository.Create(ticket1);
            TicketRepository.Create(ticket2);
            TicketRepository.Create(ticket3);
            TicketRepository.Create(ticket4);

            FlightRepository.Create(new Flight()
            {
                Number        = 1,
                ArrivalTime   = new DateTime(2018, 12, 13),
                DepartureFrom = "Kyiv",
                Destination   = "Tokio",
                Tickets       = new List <Ticket>()
                {
                    ticket2
                },
                TimeOfDeparture = new DateTime(2018, 12, 12)
            });

            FlightRepository.Create(new Flight()
            {
                Number        = 2,
                ArrivalTime   = new DateTime(2018, 07, 18),
                DepartureFrom = "Paris",
                Destination   = "Dublin",
                Tickets       = new List <Ticket>()
                {
                    ticket1, ticket5
                },
                TimeOfDeparture = new DateTime(2018, 07, 18)
            });

            FlightRepository.Create(new Flight()
            {
                Number        = 3,
                ArrivalTime   = new DateTime(2018, 03, 04),
                DepartureFrom = "London",
                Destination   = "Lviv",
                Tickets       = new List <Ticket>()
                {
                    ticket4
                },
                TimeOfDeparture = new DateTime(2018, 03, 03)
            });

            FlightRepository.Create(new Flight()
            {
                Number        = 4,
                ArrivalTime   = new DateTime(2018, 08, 09),
                DepartureFrom = "Oslo",
                Destination   = "Kyiv",
                Tickets       = new List <Ticket>()
                {
                    ticket3
                },
                TimeOfDeparture = new DateTime(2018, 08, 07)
            });

            //
            Stewardess stewardess1 = new Stewardess()
            {
                Id          = 1,
                Name        = "StName1",
                Surname     = "StSurname1",
                DateOfBirth = new DateTime(1993, 9, 8)
            };

            Stewardess stewardess2 = new Stewardess()
            {
                Id          = 2,
                Name        = "StName2",
                Surname     = "StSurname2",
                DateOfBirth = new DateTime(1992, 4, 2)
            };

            Stewardess stewardess3 = new Stewardess()
            {
                Id          = 3,
                Name        = "StName3",
                Surname     = "StSurname3",
                DateOfBirth = new DateTime(1993, 11, 30)
            };

            Stewardess stewardess4 = new Stewardess()
            {
                Id          = 4,
                Name        = "StName4",
                Surname     = "StSurname4",
                DateOfBirth = new DateTime(1994, 10, 25)
            };

            Stewardess stewardess5 = new Stewardess()
            {
                Id          = 5,
                Name        = "StName5",
                Surname     = "StSurname5",
                DateOfBirth = new DateTime(1989, 8, 3)
            };

            Stewardess stewardess6 = new Stewardess()
            {
                Id          = 6,
                Name        = "StName6",
                Surname     = "StSurname6",
                DateOfBirth = new DateTime(1994, 9, 15)
            };

            Stewardess stewardess7 = new Stewardess()
            {
                Id          = 7,
                Name        = "StName7",
                Surname     = "StSurname7",
                DateOfBirth = new DateTime(1993, 9, 12)
            };

            StewardessRepository.Create(stewardess1);
            StewardessRepository.Create(stewardess2);
            StewardessRepository.Create(stewardess3);
            StewardessRepository.Create(stewardess4);
            StewardessRepository.Create(stewardess5);
            StewardessRepository.Create(stewardess6);
            StewardessRepository.Create(stewardess7);

            Pilot pilot1 = new Pilot()
            {
                Id         = 1,
                Name       = "PName1",
                Surname    = "PSurname1",
                Experience = 3
            };

            Pilot pilot2 = new Pilot()
            {
                Id         = 2,
                Name       = "PName2",
                Surname    = "PSurname2",
                Experience = 1
            };

            Pilot pilot3 = new Pilot()
            {
                Id         = 3,
                Name       = "PName3",
                Surname    = "PSurname3",
                Experience = 2
            };

            Pilot pilot4 = new Pilot()
            {
                Id         = 4,
                Name       = "PName4",
                Surname    = "PSurname4",
                Experience = 4
            };

            PilotRepository.Create(pilot1);
            PilotRepository.Create(pilot2);
            PilotRepository.Create(pilot3);
            PilotRepository.Create(pilot4);

            Crew crew1 = new Crew()
            {
                Id           = 1,
                Pilot        = pilot2,
                Stewardesses = new List <Stewardess>()
                {
                    stewardess1, stewardess5
                }
            };

            Crew crew2 = new Crew()
            {
                Id           = 2,
                Pilot        = pilot2,
                Stewardesses = new List <Stewardess>()
                {
                    stewardess2, stewardess5, stewardess7
                }
            };

            Crew crew3 = new Crew()
            {
                Id           = 3,
                Pilot        = pilot3,
                Stewardesses = new List <Stewardess>()
                {
                    stewardess6
                }
            };

            Crew crew4 = new Crew()
            {
                Id           = 4,
                Pilot        = pilot4,
                Stewardesses = new List <Stewardess>()
                {
                    stewardess7, stewardess4
                }
            };

            CrewRepository.Create(crew1);
            CrewRepository.Create(crew2);
            CrewRepository.Create(crew3);
            CrewRepository.Create(crew4);

            Departure departure1 = new Departure()
            {
                Id              = 1,
                RaceNumber      = 2,
                Crew            = crew4,
                TimeOfDeparture = new DateTime(2018, 07, 18)
            };

            Departure departure2 = new Departure()
            {
                Id              = 2,
                RaceNumber      = 1,
                Crew            = crew3,
                TimeOfDeparture = new DateTime(2018, 12, 13)
            };

            Departure departure3 = new Departure()
            {
                Id              = 3,
                RaceNumber      = 3,
                Crew            = crew2,
                TimeOfDeparture = new DateTime(2018, 03, 03)
            };

            Departure departure4 = new Departure()
            {
                Id              = 4,
                RaceNumber      = 2,
                Crew            = crew4,
                TimeOfDeparture = new DateTime(2018, 08, 07)
            };

            DepartureRepository.Create(departure1);
            DepartureRepository.Create(departure2);
            DepartureRepository.Create(departure3);
            DepartureRepository.Create(departure4);

            PlaneType planeType1 = new PlaneType()
            {
                Id            = 1,
                NumberOfSeats = 100,
                LoadCapacity  = 15000,
                Model         = "Model1"
            };

            PlaneType planeType2 = new PlaneType()
            {
                Id            = 2,
                NumberOfSeats = 101,
                LoadCapacity  = 15001,
                Model         = "Model2"
            };

            PlaneType planeType3 = new PlaneType()
            {
                Id            = 3,
                NumberOfSeats = 103,
                LoadCapacity  = 15003,
                Model         = "Model3"
            };

            PlaneType planeType4 = new PlaneType()
            {
                Id            = 4,
                NumberOfSeats = 104,
                LoadCapacity  = 15004,
                Model         = "Model4"
            };

            PlaneTypeRepository.Create(planeType1);
            PlaneTypeRepository.Create(planeType2);
            PlaneTypeRepository.Create(planeType3);
            PlaneTypeRepository.Create(planeType4);

            Plane plane1 = new Plane()
            {
                Id          = 1,
                PlaneType   = planeType3,
                ReleaseDate = new DateTime(2003, 11, 9)
            };

            Plane plane2 = new Plane()
            {
                Id          = 2,
                PlaneType   = planeType1,
                ReleaseDate = new DateTime(2002, 10, 10)
            };

            Plane plane3 = new Plane()
            {
                Id          = 3,
                PlaneType   = planeType4,
                ReleaseDate = new DateTime(2004, 9, 30)
            };

            Plane plane4 = new Plane()
            {
                Id          = 4,
                PlaneType   = planeType2,
                ReleaseDate = new DateTime(2001, 11, 8)
            };

            PlaneRepository.Create(plane1);
            PlaneRepository.Create(plane2);
            PlaneRepository.Create(plane3);
            PlaneRepository.Create(plane4);
        }
Exemple #11
0
 public CrewService()
 {
     _crewRepository = new CrewRepository(new MovieShopDbContext());
 }