/** * Tests the check for the number of depots, only 1 is allowed. */ @Test(expected = IllegalArgumentException.class) public void multiDepotFail() { init(false); PDPTWTestUtil.register(rm, pm, depot, new Depot(new Point(3, 5)), d); }
.build(); PDPTWTestUtil.register(rm, pm, p4);
@Test public void convertTest() { PDPTWTestUtil.register(rm, pm, v1, p1);
/** * Tests that the statemachine dispatches the correct events in the correct * order when there is no service time. */ @Test @SuppressWarnings("ModifyingCollectionWithItself") public void noServiceTime() { final Parcel noServ = Parcel .builder(new Point(1, 2), new Point(1, 4)) .pickupTimeWindow(TimeWindow.create(minute(5), minute(15))) .deliveryTimeWindow(TimeWindow.create(minute(16), minute(30))) .pickupDuration(minute(0)) .deliveryDuration(minute(0)) .build(); PDPTWTestUtil.register(rm, pm, noServ); final List<DefaultEvent> expected = new ArrayList<>(asList(GOTO, ARRIVED, READY_TO_SERVICE, DONE)); expected.addAll(expected); final List<DefaultEvent> actual = new ArrayList<>(); d.stateMachine.getEventAPI().addListener(new Listener() { @Override public void handleEvent(Event e) { actual.add((DefaultEvent) ((StateTransitionEvent) e).trigger); } }, StateMachineEvent.STATE_TRANSITION); d.setRoute(asList(noServ, noServ)); tick(0, 100); assertThat(actual).containsExactlyElementsIn(expected).inOrder(); }
final TestVehicle v1 = new TestVehicle(new Point(0, 1)); final TestVehicle v2 = new TestVehicle(new Point(0, 1)); PDPTWTestUtil.register(sim, p1, p2, p3, v1, v2);
PDPTWTestUtil.register(rm, pm, v1, p1);
/** * Tests a subclass that changes the state machine. */ @Test public void testExtension() { final VehicleDTO v = VehicleDTO.builder() .startPosition(new Point(1, 1)) .speed(30d) .capacity(1) .availabilityTimeWindow(TimeWindow.create(0, minute(30))) .build(); final SubVehicle vehicle = new SubVehicle(v, allowDelayedRouteChanges); d = vehicle; PDPTWTestUtil.register(rm, pm, vehicle); tick(0, 1); assertEquals(vehicle.waitState, vehicle.stateMachine.getCurrentState()); vehicle.stateMachine.handle(ExtraEvent.TEST_EVENT, vehicle); assertEquals(vehicle.extraState, vehicle.stateMachine.getCurrentState()); tick(1, 2); assertEquals(vehicle.waitState, vehicle.stateMachine.getCurrentState()); }
PDPTWTestUtil.register(rm, pm, depot, d, d2, p1, p2, p3); assertEquals(depot, d.getDepot());
.build(); PDPTWTestUtil.register(rm, pm, p4);
.build(); PDPTWTestUtil.register(rm, pm, p4);
.build(); PDPTWTestUtil.register(rm, pm, p4);