public void CallAddAirportOnAirportServiceWIthExpectedAirport()
        {
            // Arrange
            var countryService  = new Mock <ICountryService>();
            var airlineService  = new Mock <IAirlineService>();
            var flightService   = new Mock <IFlightService>();
            var mappingService  = new Mock <IMappingService>();
            var cityService     = new Mock <ICityService>();
            var airportService  = new Mock <IAirportService>();
            var jobService      = new Mock <IJobService>();
            var adminController = new AdminController(countryService.Object, mappingService.Object, cityService.Object, airlineService.Object, airportService.Object, flightService.Object, jobService.Object);

            var expectedAirportVIewModel = new AirportViewModel()
            {
                Id = 1
            };

            var airport = new Airport()
            {
                Id = 1
            };

            mappingService.Setup(m => m.Map <Airport>(expectedAirportVIewModel)).Returns(airport);

            // Act
            adminController.AddAirport(expectedAirportVIewModel);

            // Assert
            airportService.Verify(c => c.AddAirport(airport), Times.Once);
        }
        public void CallMapOnMappingServiceWithExpectedCountry()
        {
            // Arrange
            var countryService  = new Mock <ICountryService>();
            var airlineService  = new Mock <IAirlineService>();
            var flightService   = new Mock <IFlightService>();
            var mappingService  = new Mock <IMappingService>();
            var cityService     = new Mock <ICityService>();
            var airportService  = new Mock <IAirportService>();
            var jobService      = new Mock <IJobService>();
            var adminController = new AdminController(countryService.Object, mappingService.Object, cityService.Object, airlineService.Object, airportService.Object, flightService.Object, jobService.Object);

            var countries = new List <Country>()
            {
                new Country()
                {
                    Id = 1, Name = "First"
                },
                new Country()
                {
                    Id = 2, Name = "Second"
                },
                new Country()
                {
                    Id = 3, Name = "Third"
                }
            };

            countryService.Setup(c => c.GetAllCountries()).Returns(countries);

            var countryViewModel = new CountryViewModel()
            {
                Id = 1, Name = "Name"
            };

            mappingService.Setup(m => m.Map <CountryViewModel>(It.IsAny <Country>())).Returns(countryViewModel);

            // Act
            adminController.AddAirport();

            // Assert
            foreach (var country in countries)
            {
                mappingService.Verify(m => m.Map <CountryViewModel>(country), Times.Once);
            }
        }
        public void CallGetAllCountries_OnCountryService()
        {
            // Arrange
            var countryService  = new Mock <ICountryService>();
            var airlineService  = new Mock <IAirlineService>();
            var flightService   = new Mock <IFlightService>();
            var mappingService  = new Mock <IMappingService>();
            var cityService     = new Mock <ICityService>();
            var airportService  = new Mock <IAirportService>();
            var jobService      = new Mock <IJobService>();
            var adminController = new AdminController(countryService.Object, mappingService.Object, cityService.Object, airlineService.Object, airportService.Object, flightService.Object, jobService.Object);

            // Act
            adminController.AddAirport();

            // Assert
            countryService.Verify(c => c.GetAllCountries(), Times.Once);
        }