Beispiel #1
0
  @Test
  public void should_park_successfully_when_have_available_parking_port() {
    parkingLotList = new ArrayList<ParkingLot>();
    parkingLotList.add(new ParkingLot(10));
    smartManager = new Manager(parkingLotList, StategyEnum.SMART);

    Car car = new Car();
    Receipt receipt = smartManager.park(car);
    assertNotNull(receipt);
  }
Beispiel #2
0
  @Test
  public void
      should_park_in_the_most_avaiable_port_parking_lot_when_there_is_only_one_parking_lot() {
    parkingLotList = new ArrayList<ParkingLot>();
    ParkingLot mostAvailableSpaceParkingLot = new ParkingLot(3);
    parkingLotList.add(mostAvailableSpaceParkingLot);
    smartManager = new Manager(parkingLotList, StategyEnum.SMART);

    Car car = new Car();
    Receipt receipt = smartManager.park(car);
    Car car1 = mostAvailableSpaceParkingLot.getCar(receipt);
    assertSame(car, car1);
  }
Beispiel #3
0
  @Test
  public void
      should_park_the_car_in_the_most_available_port_parking_lot_when_there_are_two_parking_lot()
          throws Exception {
    parkingLotList = new ArrayList<ParkingLot>();
    parkingLotList.add(new ParkingLot(10));
    ParkingLot mostAvailableSpaceParkingLot = new ParkingLot(20);
    parkingLotList.add(mostAvailableSpaceParkingLot);
    smartManager = new Manager(parkingLotList, StategyEnum.SMART);

    Car car = new Car();
    Receipt receipt = smartManager.park(car);
    Car car1 = mostAvailableSpaceParkingLot.getCar(receipt);
    assertSame(car, car1);
  }