Skip to content

Commit fe388c7

Browse files
committed
Add test for walking before rental
1 parent 6901346 commit fe388c7

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

src/test/java/org/opentripplanner/street/model/edge/StreetEdgeTest.java

+27
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,33 @@ public void testTraverseFloatingScooter() {
210210
);
211211
}
212212

213+
@Test
214+
public void testWalkingBeforeScooter() {
215+
StreetEdge e1 = streetEdgeBuilder(v1, v2, 100.0, StreetTraversalPermission.ALL)
216+
.withCarSpeed(10.0f)
217+
.buildAndConnect();
218+
219+
var request = StreetSearchRequest
220+
.copyOf(proto)
221+
.withPreferences(pref -> pref.withWalk(walk -> walk.withReluctance(1)))
222+
.withMode(StreetMode.SCOOTER_RENTAL);
223+
224+
State s0 = new State(v1, request.build());
225+
State result = e1.traverse(s0)[0];
226+
227+
request.withPreferences(pref ->
228+
pref.withScooter(scooter -> scooter.withReluctance(5).withSpeed(8.5))
229+
);
230+
231+
s0 = new State(v1, request.build());
232+
var scooterReluctanceResult = e1.traverse(s0)[0];
233+
234+
// Scooter preferences shouldn't affect walking when SCOOTER_RENTAL is used as mode
235+
assertEquals(TraverseMode.WALK, result.currentMode());
236+
assertEquals(result.getWeight(), scooterReluctanceResult.getWeight(), DELTA);
237+
assertEquals(result.getElapsedTimeSeconds(), scooterReluctanceResult.getElapsedTimeSeconds());
238+
}
239+
213240
@Test
214241
public void testModeSetCanTraverse() {
215242
StreetEdge e = streetEdge(v1, v2, 1.0, StreetTraversalPermission.ALL);

0 commit comments

Comments
 (0)