// License: GPL. For details, see LICENSE file. package org.openstreetmap.josm.plugins.pt_assistant.data; import static org.junit.Assert.assertEquals; import java.io.File; import org.junit.Test; import org.openstreetmap.josm.data.osm.DataSet; import org.openstreetmap.josm.data.osm.Relation; import org.openstreetmap.josm.data.osm.Way; import org.openstreetmap.josm.plugins.pt_assistant.AbstractTest; import org.openstreetmap.josm.plugins.pt_assistant.ImportUtils; import org.openstreetmap.josm.plugins.pt_assistant.utils.StopToWayAssigner; public class StopToWayAssignerTest extends AbstractTest { @Test public void test() { File file = new File(AbstractTest.PATH_TO_ONEWAY_BAD_MEMBER_SORTING); DataSet ds = ImportUtils.importOsmFile(file, "testLayer"); Relation route = null; for (Relation r: ds.getRelations()) { if (r.getId() == 4552871) { route = r; break; } } PTRouteDataManager manager = new PTRouteDataManager(route); StopToWayAssigner assigner = new StopToWayAssigner(manager.getPTWays()); // test with a [correct] stop_position: PTStop ptstop1 = manager.getPTStop(447358573L); // PTWay ptway1 = assigner.get(ptstop1); // Way way1 = ptway1.getWays().get(0); Way way1 = assigner.get(ptstop1); assertEquals(way1.getId(), 26956744L); // test with a [wrong] stop_position: PTStop ptstop2 = manager.getPTStop(427562058L); Way way2 = assigner.get(ptstop2); assertEquals(way2.getId(), 46349880L); // test with a stop_area: PTStop ptstop3 = manager.getPTStop(2987217064L); Way way3 = assigner.get(ptstop3); assertEquals(way3.getId(), 7045925L); // test with a platform without a stop_area: PTStop ptstop4 = manager.getPTStop(3327206909L); Way way4 = assigner.get(ptstop4); assertEquals(way4.getId(), 120277227L); } }