@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);
}