@Test public void testRun_onePerLink_assignLinks() { Fixture f = new Fixture(); FacilitiesFromPopulation generator = new FacilitiesFromPopulation(f.scenario.getActivityFacilities()); generator.setOneFacilityPerLink(true); generator.setAssignLinksToFacilitiesIfMissing(true, f.scenario.getNetwork()); generator.run(f.scenario.getPopulation()); Assert.assertEquals(3, f.scenario.getActivityFacilities().getFacilities().size()); Assert.assertEquals("bc", f.scenario.getActivityFacilities().getFacilities().get(Id.create("bc", ActivityFacility.class)).getLinkId().toString()); Assert.assertEquals("ca", f.scenario.getActivityFacilities().getFacilities().get(Id.create("ca", ActivityFacility.class)).getLinkId().toString()); Assert.assertEquals("ab", f.scenario.getActivityFacilities().getFacilities().get(Id.create("ab", ActivityFacility.class)).getLinkId().toString()); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("1", Person.class)).getSelectedPlan(), "ab", "bc", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("2", Person.class)).getSelectedPlan(), "ab", "bc", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("3", Person.class)).getSelectedPlan(), "ab", "bc", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("4", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("5", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("6", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("7", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("8", Person.class)).getSelectedPlan(), "ca", "ab", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("9", Person.class)).getSelectedPlan(), "ca", "ab", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("0", Person.class)).getSelectedPlan(), "ca", "ab", true); }
Assert.assertEquals("ca", ffs.get(Id.create("12", ActivityFacility.class)).getLinkId().toString()); // home of agent 10 assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("1", Person.class)).getSelectedPlan(), "0", "1", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("2", Person.class)).getSelectedPlan(), "2", "1", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("3", Person.class)).getSelectedPlan(), "3", "1", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("4", Person.class)).getSelectedPlan(), "4", "5", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("5", Person.class)).getSelectedPlan(), "6", "5", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("6", Person.class)).getSelectedPlan(), "7", "5", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("7", Person.class)).getSelectedPlan(), "8", "5", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("8", Person.class)).getSelectedPlan(), "9", "10", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("9", Person.class)).getSelectedPlan(), "11", "10", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("0", Person.class)).getSelectedPlan(), "12", "10", true);
Assert.assertEquals(19*3600, ffs.get(Id.create("ab", ActivityFacility.class)).getActivityOptions().get("work").getOpeningTimes().first().getEndTime(), 1e-7); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("1", Person.class)).getSelectedPlan(), "ab", "bc", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("2", Person.class)).getSelectedPlan(), "ab", "bc", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("3", Person.class)).getSelectedPlan(), "ab", "bc", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("4", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("5", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("6", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("7", Person.class)).getSelectedPlan(), "bc", "ca", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("8", Person.class)).getSelectedPlan(), "ca", "ab", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("9", Person.class)).getSelectedPlan(), "ca", "ab", true); assertPlan(f.scenario.getPopulation().getPersons().get(Id.create("0", Person.class)).getSelectedPlan(), "ca", "ab", true);