示例#1
0
        public void should_be_able_to_pick_car()
        {
            var car = new Car();
            var parkingLot = new ParkingLot(1);
            var parkingBoy = new SuperParkingBoy(new List<ParkingLot>() { parkingLot });

            var ticket = parkingLot.Park(car);

            Assert.Equal(car, parkingBoy.Pick(ticket));
        }
示例#2
0
        public void should_be_able_to_park_car_if_parking_lots_has_same_free_space_rate()
        {
            var parkingLot1 = new ParkingLot(1);
            var parkingLot2 = new ParkingLot(1);
            var superParkingBoy = new SuperParkingBoy(new List<ParkingLot> { parkingLot1, parkingLot2 });
            var car = new Car();

            var ticket = superParkingBoy.Park(car);

            Assert.Equal(car, superParkingBoy.Pick(ticket));
        }
示例#3
0
        public void should_increase_free_space_rate_when_pick_car()
        {
            var parkingLot = new ParkingLot(2);
            var superParkingBoy = new SuperParkingBoy(new List<ParkingLot> { parkingLot });
            var ticket = superParkingBoy.Park(new Car());
            var freeSpaceRateBeforePick = parkingLot.FreeSpaceRate;

            superParkingBoy.Pick(ticket);
            var freeSpaceRateAfterPick = parkingLot.FreeSpaceRate;

            Assert.True(freeSpaceRateBeforePick < freeSpaceRateAfterPick);
        }
示例#4
0
        public void should_pick_car_from_parking_lot_2_if_the_car_is_in_parking_lot_2()
        {
            var parkingLot1 = new ParkingLot(1);
            var parkingLot2 = new ParkingLot(1);
            var parkingBoy = new SuperParkingBoy(new List<ParkingLot>() { parkingLot1, parkingLot2 });
            var car = new Car();

            var ticket = parkingLot2.Park(car);

            Assert.Equal(car, parkingBoy.Pick(ticket));
        }