Пример #1
0
        public void VehicleLeave()
        {
            var sector      = 1;
            var placeNumber = 1;
            var vehicle     = new Vehicle(RateConstants.CAR_REGULAR_RATE, RateConstants.CAR_OVERTIME_RATE, VehicleType.Car,
                                          "AA1111AA", "DrHouse", 1, DateTime.UtcNow, sector, placeNumber);

            _parkVehicle.Park(vehicle, sector, placeNumber, DateTime.UtcNow);

            var statuses = _parkVehicle.GetStatus();

            Assert.AreEqual(2, statuses.Count);
            Assert.AreEqual(1, statuses[0].OccupiedPlaces);
            Assert.AreEqual(0, statuses[1].OccupiedPlaces);
            Assert.AreEqual(33, statuses[0].OccupiedPercent);
            Assert.AreEqual(0, statuses[1].OccupiedPercent);

            _parkVehicle.ExitVehicle(vehicle.LicensePlate, DateTime.UtcNow.AddHours(1), 10);

            statuses = _parkVehicle.GetStatus();
            Assert.AreEqual(2, statuses.Count);
            Assert.AreEqual(0, statuses[0].OccupiedPlaces);
            Assert.AreEqual(0, statuses[1].OccupiedPlaces);
            Assert.AreEqual(0, statuses[0].OccupiedPercent);
            Assert.AreEqual(0, statuses[1].OccupiedPercent);
        }
 public void Park_NoVehicleInPark_ArgumentException()
 {
     _parkVehicle.ExitVehicle("AA1111AA", DateTime.UtcNow, 0);
 }