public void InitializeTest()
        {
            var stationmock = new MockService().GetStationRepositoryMock();

            var airport = new ControlTour(new QueueService(), stationmock.Object);

            Assert.Equal(8, airport.Stations.Count);
        }
        public void InitQueueTest()
        {
            var queueService = new QueueService();
            var mock         = new MockService().GetStationRepositoryMock();
            var airport      = new ControlTour(queueService, mock.Object);

            Assert.Equal(7, queueService.queuesSteps.Count);
        }
        public void NewDepartureOrArrival_DepartureTest()
        {
            var stationmock = new MockService().GetStationRepositoryMock();

            var airport = new ControlTour(new QueueService(), stationmock.Object);

            var plane = new Plane("HE123", DateTime.Now.AddSeconds(1), 6000000, FlightState.Departure);

            airport.NewDepartureOrArrival(plane);

            Assert.Contains(plane, airport.waitingList);
        }
        public void ArrivalMovementTest(int stationNumber, string expectedResult)
        {
            var plane = new Plane("FR123", DateTime.Now, 19, FlightState.Arrival)
            {
                StationNumber = stationNumber
            };

            var stationmock = new MockService().GetStationRepositoryMock();

            var airport = new ControlTour(new QueueService(), stationmock.Object);

            var actualResult = airport.GetNextMove(plane);

            Assert.Equal(actualResult, expectedResult);
        }
        public void WaitingTimerTickFunctionTest()
        {
            var stationmock = new MockService().GetStationRepositoryMock();

            var airport = new ControlTour(new QueueService(), stationmock.Object);

            var plane = new Plane("HE123", DateTime.Now, 6000, FlightState.Departure);

            airport.waitingList.Add(plane);

            //null because we don't need it
            airport.WaitingTimer_Elapsed(null, null);

            Assert.DoesNotContain(plane, airport.waitingList);
        }