@Test public void testReadRoute_consequentLinks() throws SAXException, ParserConfigurationException, IOException { final MutableScenario scenario = (MutableScenario) ScenarioUtils.createScenario(ConfigUtils.createConfig()); final Population population = scenario.getPopulation(); MatsimXmlParser parser = new PopulationReaderMatsimV5(scenario); XmlParserTestHelper tester = new XmlParserTestHelper(parser); tester.startTag("population"); tester.startTag("person", new String[][]{{"id", "1"}}); tester.startTag("plan", new String[][]{{"selected", "no"}}); tester.startTag("act", new String[][]{{"type", "h"}, {"x", "-25000"}, {"y", "0"}, {"link", "1"}, {"end_time", "06:00"}}); tester.endTag(); tester.startTag("leg", new String[][]{{"mode", "car"}}); tester.startTag("route", new String[][]{{"type", "links"}}); tester.endTag("1 2"); tester.endTag(); tester.startTag("act", new String[][]{{"type", "w"}, {"x", "10000"}, {"y", "0"}, {"link", "2"}, {"dur", "00:10"}}); tester.endTag(); tester.endTag(); tester.endTag(); tester.endTag(); Person person1 = population.getPersons().get(Id.create("1", Person.class)); Plan plan1 = person1.getPlans().get(0); Leg leg1a = (Leg) plan1.getPlanElements().get(1); Route route1a = leg1a.getRoute(); Assert.assertEquals("different startLink for first leg.", "1", route1a.getStartLinkId().toString()); Assert.assertEquals("different endLink for first leg.", "2", route1a.getEndLinkId().toString()); Assert.assertTrue(route1a instanceof NetworkRoute); NetworkRoute nr = (NetworkRoute) route1a; Assert.assertEquals(0, nr.getLinkIds().size()); }
@Test public void testReadRoute_sameLinkRoute() throws SAXException, ParserConfigurationException, IOException { final MutableScenario scenario = (MutableScenario) ScenarioUtils.createScenario(ConfigUtils.createConfig()); final Population population = scenario.getPopulation(); MatsimXmlParser parser = new PopulationReaderMatsimV5(scenario); XmlParserTestHelper tester = new XmlParserTestHelper(parser); tester.startTag("population"); tester.startTag("person", new String[][]{{"id", "1"}}); tester.startTag("plan", new String[][]{{"selected", "no"}}); tester.startTag("act", new String[][]{{"type", "h"}, {"x", "-25000"}, {"y", "0"}, {"link", "1"}, {"end_time", "06:00"}}); tester.endTag(); tester.startTag("leg", new String[][]{{"mode", "car"}}); tester.startTag("route", new String[][]{{"type", "links"}}); tester.endTag("1"); tester.endTag(); tester.startTag("act", new String[][]{{"type", "w"}, {"x", "10000"}, {"y", "0"}, {"link", "1"}, {"dur", "00:10"}}); tester.endTag(); tester.endTag(); tester.endTag(); tester.endTag(); Person person1 = population.getPersons().get(Id.create("1", Person.class)); Plan plan1 = person1.getPlans().get(0); Leg leg1a = (Leg) plan1.getPlanElements().get(1); Route route1a = leg1a.getRoute(); Assert.assertEquals("different startLink for first leg.", "1", route1a.getStartLinkId().toString()); Assert.assertEquals("different endLink for first leg.", "1", route1a.getEndLinkId().toString()); Assert.assertTrue(route1a instanceof NetworkRoute); NetworkRoute nr = (NetworkRoute) route1a; Assert.assertEquals(0, nr.getLinkIds().size()); }
XmlParserTestHelper tester = new XmlParserTestHelper(parser);