public void TestSuccessfulTakeOff()
        {
            IAirport airport = new Airport();

            IAirplane    airplane  = new LightAirplane();
            IPassenger   passenger = new Passenger("Pesho");
            IItem        item      = new Toothbrush();
            IItem        item2     = new Jewelery();
            List <IItem> items     = new List <IItem>();

            items.Add(item);
            items.Add(item2);
            IBag bag = new Bag(passenger, items);

            airplane.AddPassenger(passenger);
            ITrip trip = new Trip("Sofia", "London", airplane);

            airport.AddTrip(trip);

            FlightController flight = new FlightController(airport);

            var actualResult = flight.TakeOff();

            StringBuilder sb = new StringBuilder();

            sb.AppendLine("SofiaLondon1:")
            .AppendLine("Successfully transported 1 passengers from Sofia to London.")
            .AppendLine("Confiscated bags: 0 (0 items) => $0");

            var expectedResult = sb.ToString().Trim();

            Assert.AreEqual(expectedResult, actualResult);
        }
示例#2
0
    private void OnTriggerStay(Collider other)
    {
        if (other.tag == "Brush")
        {
            Toothbrush brush = other.GetComponent <Toothbrush>();
            ReduceHealth(brush.BrushForce);

            float prog = 1 - Health / MaxHealth;
            //ProgressColor.r = prog;
            //ProgressColor.g = prog;
            //ProgressColor.b = prog;

            _r.material.color = Color.Lerp(ProgressColor, Color.white, prog);

            if (Time.time - _lastBrushSound > _brushDelay && brush.BrushForce > 0)
            {
                AudioManager.PlaySound(BrushSound, 0.5f);
                _lastBrushSound = Time.time;
            }
        }
    }
        public void TestWithConfiscatedBags()
        {
            IAirport airport = new Airport();

            IAirplane    airplane   = new LightAirplane();
            IPassenger   passenger  = new Passenger("Pesho");
            IPassenger   passenger2 = new Passenger("Kolio");
            IPassenger   passenger3 = new Passenger("Gosho");
            IPassenger   passenger4 = new Passenger("Kiro");
            IPassenger   passenger5 = new Passenger("Ganio");
            IPassenger   passenger6 = new Passenger("Penka");
            IItem        item       = new Toothbrush();
            IItem        item2      = new Jewelery();
            IItem        item3      = new Colombian();
            List <IItem> items      = new List <IItem>();

            items.Add(item);
            items.Add(item2);
            items.Add(item3);
            IBag bag = new Bag(passenger, items);

            airplane.AddPassenger(passenger);
            airplane.AddPassenger(passenger2);
            airplane.AddPassenger(passenger3);
            airplane.AddPassenger(passenger4);
            airplane.AddPassenger(passenger5);
            airplane.AddPassenger(passenger6);
            ITrip trip = new Trip("Sofia", "London", airplane);

            airport.AddTrip(trip);
            airport.AddConfiscatedBag(bag);

            FlightController flight = new FlightController(airport);

            flight.TakeOff();

            var actualResult = trip.IsCompleted;

            Assert.IsTrue(actualResult);
        }
        public void TestAirplaneIsOverBookedAndThereIsConfiscatedBaggage()
        {
            var airport          = new Airport();
            var flightController = new FlightController(airport);
            var airplane         = new LightAirplane();
            var trip             = new Trip("Sofia", "Plovdiv", airplane);

            airport.AddTrip(trip);
            var passenger1 = new Passenger("Pesho");

            airplane.AddPassenger(passenger1);
            var passenger2 = new Passenger("Gogo");

            airplane.AddPassenger(passenger2);
            var passenger3 = new Passenger("Miro");

            airplane.AddPassenger(passenger3);
            var passenger4 = new Passenger("Niki");

            airplane.AddPassenger(passenger4);
            var passenger5 = new Passenger("Lili");

            airplane.AddPassenger(passenger5);
            var passenger6 = new Passenger("Nadia");

            airplane.AddPassenger(passenger6);

            var items = new List <Item>();
            var item1 = new Laptop();
            var item2 = new Jewelery();
            var item3 = new TravelKit();
            var item4 = new Toothbrush();

            items.Add(item1);
            items.Add(item2);
            items.Add(item3);
            items.Add(item4);

            var bag1 = new Bag(passenger1, items);
            var bag2 = new Bag(passenger2, items);
            var bag3 = new Bag(passenger3, items);
            var bag4 = new Bag(passenger4, items);
            var bag5 = new Bag(passenger5, items);

            passenger1.Bags.Add(bag1);
            passenger2.Bags.Add(bag2);
            passenger3.Bags.Add(bag3);
            passenger4.Bags.Add(bag4);
            passenger5.Bags.Add(bag5);

            var completedTrip = new Trip("Sofia", "Varna", new LightAirplane());

            completedTrip.Complete();

            airport.AddTrip(completedTrip);
            string expectedResult = "SofiaPlovdiv1:\r\nOverbooked! Ejected Gogo\r\nConfiscated 1 bags ($3333)\r\nSuccessfully transported 5 passengers from Sofia to Plovdiv.\r\nConfiscated bags: 1 (4 items) => $3333";
            string actualResult   = flightController.TakeOff();

            //System.Console.WriteLine();

            Assert.That(actualResult, Is.EqualTo(expectedResult));
            Assert.That(trip.IsCompleted, Is.True);
        }