assertEquals(2, f.qlink1.getAllVehicles().size()); assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink1.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); f.simEngine.doSimStep(102); Collection<MobsimVehicle> allVehicles = f.qlink2.getAllVehicles(); assertEquals(1, allVehicles.size()); assertEquals(f.normalVehicle, f.qlink2.getAllVehicles().toArray(new MobsimVehicle[1])[0]); // first the normal vehicle assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(f.transitVehicle, vehicles[1]); // second the transit vehicle assertEquals(2, f.qlink2.getAllVehicles().size());
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(f.normalVehicle, f.qlink2.getAllVehicles().toArray(new MobsimVehicle[1])[0]); // first the normal vehicle assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(f.transitVehicle, vehicles[1]); // second the transit vehicle assertEquals(2, f.qlink2.getAllVehicles().size());
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(1, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink3.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink3.getAllVehicles().size());
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink1.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(f.normalVehicle2, vehicles[1]); assertEquals(1, f.qlink1.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(f.normalVehicle2, vehicles[1]);
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(1, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]);
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(1, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(2, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(2, f.qlink3.getAllVehicles().size()); assertEquals(2, f.qlink3.getAllVehicles().size()); assertEquals(2, f.qlink3.getAllNonParkedVehicles().size());
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle2, vehicles[1]); assertEquals(1, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles);
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle2, vehicles[1]); assertEquals(1, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles);
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(1, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.normalVehicle, vehicles[0]); assertEquals(2, f.qlink3.getAllVehicles().size()); vehicles = f.qlink3.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); assertEquals(2, f.qlink3.getAllVehicles().size()); assertEquals(2, f.qlink3.getAllVehicles().size()); // includes parked vehicles assertEquals(1, f.qlink3.getAllNonParkedVehicles().size());
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); f.qsim.internalInterface.arrangeNextAgentState(f.normalVehicle2.getDriver()); f.simEngine.doSimStep(120); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink3.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink3.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink3.getAllVehicles().size());
/** * Tests that vehicles parked on a link are found with {@link NetsimLink#getVehicle(Id)} * and {@link NetsimLink#getAllVehicles()}. * * @author mrieser */ @Test public void testGetVehicle_Parking() { Fixture f = new Fixture(isUsingFastCapacityUpdate); Id<Vehicle> id1 = Id.create("1", Vehicle.class); QVehicle veh = new QVehicleImpl(f.basicVehicle); Person p = PopulationUtils.getFactory().createPerson(Id.create(42, Person.class)); p.addPlan(PopulationUtils.createPlan()); veh.setDriver(createAndInsertPersonDriverAgentImpl(p, f.sim)); // start test, check initial conditions assertTrue(f.qlink1.isNotOfferingVehicle()); assertEquals(0, ((QueueWithBuffer) f.qlink1.getAcceptingQLane()).getAllVehicles().size()); assertEquals(0, f.qlink1.getAllVehicles().size()); f.qlink1.addParkedVehicle(veh); assertTrue(f.qlink1.isNotOfferingVehicle()); assertEquals(0, ((QueueWithBuffer) f.qlink1.getAcceptingQLane()).getAllVehicles().size()); // vehicle not on _lane_ assertEquals("vehicle not found in parking list.", veh, f.qlink1.getVehicle(id1)); assertEquals(1, f.qlink1.getAllVehicles().size()); // vehicle indeed on _link_ assertEquals(veh, f.qlink1.getAllVehicles().iterator().next()); assertEquals("removed wrong vehicle.", veh, f.qlink1.removeParkedVehicle(veh.getId())); assertTrue(f.qlink1.isNotOfferingVehicle()); assertEquals(0, ((QueueWithBuffer) f.qlink1.getAcceptingQLane()).getAllVehicles().size()); assertNull("vehicle not found in parking list.", f.qlink1.getVehicle(id1)); assertEquals(0, f.qlink1.getAllVehicles().size()); }
assertEquals(0, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); MobsimVehicle[] vehicles = f.qlink2.getAllVehicles().toArray(new MobsimVehicle[2]); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(2, f.qlink2.getAllVehicles().size()); vehicles = f.qlink2.getAllVehicles().toArray(vehicles); assertEquals(f.transitVehicle, vehicles[0]); assertEquals(f.normalVehicle, vehicles[1]); f.qsim.internalInterface.arrangeNextAgentState(f.normalVehicle2.getDriver()) ; f.simEngine.doSimStep(124); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(3, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink2.getAllVehicles().size()); assertEquals(1, f.qlink3.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink3.getAllVehicles().size()); assertEquals(1, f.qlink2.getAllVehicles().size()); assertEquals(2, f.qlink3.getAllVehicles().size());
assertEquals(0, ((QueueWithBuffer) f.qlink1.getAcceptingQLane()).getAllVehicles().size()); assertNull(f.qlink1.getVehicle(id1)); assertEquals(0, f.qlink1.getAllVehicles().size()); assertEquals(1, ((QueueWithBuffer) f.qlink1.getAcceptingQLane()).getAllVehicles().size()); assertEquals("vehicle not found on link.", veh, f.qlink1.getVehicle(id1)); assertEquals(1, f.qlink1.getAllVehicles().size()); assertEquals(1, f.qlink1.getAllVehicles().size()); assertEquals(veh, f.qlink1.getAllVehicles().iterator().next()); assertEquals(0, f.qlink1.getAllVehicles().size());
assertEquals(1, f.qlink1.getAllVehicles().size()); assertEquals(1, f.qlink1.getAllVehicles().size()); // dto assertEquals(veh, f.qlink1.getAllVehicles().iterator().next()); // dto assertEquals(1, f.qlink1.getAllVehicles().size()); // somewhere on link assertEquals(0, ((QueueWithBuffer) f.qlink1.getAcceptingQLane()).getAllVehicles().size()); assertNull("vehicle should not be on link anymore.", f.qlink1.getVehicle(id1)); assertEquals(0, f.qlink1.getAllVehicles().size());