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"); tester.endTag("1 6 15 20"); tester.endTag(); tester.startTag("act", new String[][]{{"type", "w"}, {"x", "10000"}, {"y", "0"}, {"link", "20"}, {"dur", "00:10"}}); tester.endTag(); tester.startTag("leg", new String[][]{{"mode", "car"}}); tester.startTag("route"); tester.endTag("20"); tester.endTag(); tester.startTag("act", new String[][]{{"type", "w"}, {"x", "10000"}, {"y", "0"}, {"link", "20"}, {"dur", "03:30"}}); tester.endTag(); tester.startTag("leg", new String[][]{{"mode", "car"}}); tester.startTag("route"); tester.endTag("20 21 22 23 1"); tester.endTag(); tester.startTag("act", new String[][]{{"type", "4"}, {"x", "-25000"}, {"y", "0"}, {"link", "1"}}); tester.endTag(); tester.endTag(); tester.endTag();
@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()); }
@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()); }
public void startTag(final String name) { startTag(name, AttributesBuilder.getEmpty()); }
public void endTag() { endTag(null); }
public void startTag(final String name, final String[][] atts) { AttributesBuilder builder = new AttributesBuilder(); for (String[] attribute : atts) { builder.add(attribute[0], attribute[1]); } startTag(name, builder.get()); }