Changeset 33413 in osm for applications/editors/josm/plugins/pt_assistant/test/unit
- Timestamp:
- 2017-06-23T22:52:03+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/pt_assistant/test/unit/org/openstreetmap/josm/plugins/pt_assistant/actions/SplitRoundaboutTest.java
r33412 r33413 41 41 private OsmDataLayer layer; 42 42 private SplitRoundaboutAction action; 43 private Way r1, r2, r3; 43 private Way r1, r2, r3, r4; 44 44 45 45 @Before … … 54 54 r2 = (Way) ds.getPrimitiveById(new SimplePrimitiveId(205833435L, OsmPrimitiveType.WAY)); 55 55 r3 = (Way) ds.getPrimitiveById(new SimplePrimitiveId(25739002L, OsmPrimitiveType.WAY)); 56 r4 = (Way) ds.getPrimitives(p -> p.hasTag("name", "r4")).iterator().next(); 56 57 } 57 58 58 59 private Collection<Way> splitWay(Way w) { 59 Map<Relation, Integer> savedPositions = action.getSavedPositions(w);60 Map<Relation, List<Integer>> savedPositions = action.getSavedPositions(w); 60 61 List<Node> splitNodes = action.getSplitNodes(w); 61 assertEquals(4, splitNodes.size());62 62 SplitWayResult result = SplitWayAction.split(layer, w, splitNodes, Collections.emptyList()); 63 63 result.getCommand().executeCommand(); 64 64 Collection<Way> splitWays = result.getNewWays(); 65 splitWays.add(result.getOriginalWay()); 65 66 action.updateRelations(savedPositions, splitNodes, splitWays); 66 67 return splitWays; … … 69 70 @Test 70 71 public void test1() { 71 splitWay(r1).forEach(w -> { 72 if (w.firstNode().getUniqueId() == 267843779L && w.lastNode().getUniqueId() == 2968718407L) 72 Collection<Way> sw1 = splitWay(r1); 73 assertEquals(4, sw1.size()); 74 sw1.forEach(w -> { 75 if (w.firstNode().getUniqueId() == 267843779L && w.lastNode().getUniqueId() == 2968718407L) 73 76 assertEquals(w.getReferrers().size(), 5); 74 77 else if (w.firstNode().getUniqueId() == 2968718407L && w.lastNode().getUniqueId() == 2383688231L) … … 85 88 @Test 86 89 public void test2() { 87 splitWay(r2).forEach(w -> { 90 Collection<Way> sw2 = splitWay(r2); 91 assertEquals(4, sw2.size()); 92 sw2.forEach(w -> { 88 93 if(w.firstNode().getUniqueId() == 2158181809L && w.lastNode().getUniqueId() == 2158181798L) 89 94 assertEquals(w.getReferrers().size(), 8); … … 101 106 @Test 102 107 public void test3() { 103 splitWay(r3).forEach(w -> { 108 Collection<Way> sw3 = splitWay(r3); 109 assertEquals(4, sw3.size()); 110 sw3.forEach(w -> { 104 111 if(w.firstNode().getUniqueId() == 280697532L && w.lastNode().getUniqueId() == 280697452L) 105 112 assertEquals(w.getReferrers().size(), 0); … … 114 121 }); 115 122 } 123 124 @Test 125 public void test4() { 126 Collection<Way> sw4 = splitWay(r4); 127 assertEquals(10, sw4.size()); 128 Node entry11 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nentry1-1")).iterator().next(); 129 Node exit11 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nexit1-1")).iterator().next(); 130 Node entry12 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nentry1-2")).iterator().next(); 131 Node exit12 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nexit1-2")).iterator().next(); 132 Node entry21 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nentry2-1")).iterator().next(); 133 Node exit21 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nexit2-1")).iterator().next(); 134 Node entry22 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nentry2-2")).iterator().next(); 135 Node exit22 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nexit2-2")).iterator().next(); 136 Node entry3 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nentry3")).iterator().next(); 137 Node exit3 = (Node) ds.getPrimitives(p -> p.hasTag("name", "nexit3")).iterator().next(); 138 139 sw4.forEach(w -> { 140 if(w.firstNode().equals(entry11) && w.lastNode().equals(exit22)) 141 assertEquals(2, w.getReferrers().size()); 142 else if(w.firstNode().equals(exit22) && w.lastNode().equals(entry21)) 143 assertEquals(1, w.getReferrers().size()); 144 else if(w.firstNode().equals(entry21) && w.lastNode().equals(exit11)) 145 assertEquals(2, w.getReferrers().size()); 146 else if(w.firstNode().equals(exit11) && w.lastNode().equals(entry12)) 147 assertEquals(1, w.getReferrers().size()); 148 else if(w.firstNode().equals(entry12) && w.lastNode().equals(entry3)) 149 assertEquals(2, w.getReferrers().size()); 150 else if(w.firstNode().equals(entry3) && w.lastNode().equals(exit21)) 151 assertEquals(3, w.getReferrers().size()); 152 else if(w.firstNode().equals(exit21) && w.lastNode().equals(entry22)) 153 assertEquals(2, w.getReferrers().size()); 154 else if(w.firstNode().equals(entry22) && w.lastNode().equals(exit3)) 155 assertEquals(3, w.getReferrers().size()); 156 else if(w.firstNode().equals(exit3) && w.lastNode().equals(exit12)) 157 assertEquals(2, w.getReferrers().size()); 158 else if(w.firstNode().equals(exit12) && w.lastNode().equals(entry11)) 159 assertEquals(1, w.getReferrers().size()); 160 else 161 fail(); 162 }); 163 } 116 164 }
Note:
See TracChangeset
for help on using the changeset viewer.