Skip to content

Commit

Permalink
Add test for linking
Browse files Browse the repository at this point in the history
  • Loading branch information
leonardehrenfried committed Jul 4, 2024
1 parent 99e4353 commit 76cba9c
Showing 1 changed file with 38 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

import java.util.Set;
import java.util.stream.Stream;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
Expand Down Expand Up @@ -38,37 +39,25 @@ static Stream<Arguments> testCases() {

@ParameterizedTest(name = "Parking[tags={0}], Request[not={1}, select={2}] should traverse={3}")
@MethodSource("testCases")
void foo(Set<String> parkingTags, Set<String> not, Set<String> select, boolean shouldTraverse) {
void parkingFilters(
Set<String> parkingTags,
Set<String> not,
Set<String> select,
boolean shouldTraverse
) {
var streetVertex = intersectionVertex(1, 1);
var parking = VehicleParking
.builder()
.id(id("parking"))
.coordinate(new WgsCoordinate(1, 1))
.tags(parkingTags)
.build();

var entrance = VehicleParkingEntrance
.builder()
.vehicleParking(parking)
.entranceId(id("entrance"))
.coordinate(new WgsCoordinate(1, 1))
.name(new NonLocalizedString("entrance"))
.walkAccessible(true)
.carAccessible(true)
.build();

var entranceVertex = new VehicleParkingEntranceVertex(entrance);
final var entranceVertex = buildVertex(parkingTags);

var req = StreetSearchRequest.of();
req.withMode(StreetMode.BIKE_TO_PARK);
req.withPreferences(p ->
p.withBike(bike -> {
p.withBike(bike ->
bike.withParking(parkingPreferences -> {
parkingPreferences.withRequiredVehicleParkingTags(select);
parkingPreferences.withBannedVehicleParkingTags(not);
parkingPreferences.withCost(0);
});
})
})
)
);

var edge = StreetVehicleParkingLink.createStreetVehicleParkingLink(
Expand All @@ -84,6 +73,33 @@ void foo(Set<String> parkingTags, Set<String> not, Set<String> select, boolean s
}
}

@Test
void isLinkedToGraph() {
var vertex = buildVertex(Set.of());
assertFalse(vertex.isLinkedToGraph());
}

private static VehicleParkingEntranceVertex buildVertex(Set<String> parkingTags) {
var parking = VehicleParking
.builder()
.id(id("parking"))
.coordinate(new WgsCoordinate(1, 1))
.tags(parkingTags)
.build();

var entrance = VehicleParkingEntrance
.builder()
.vehicleParking(parking)
.entranceId(id("entrance"))
.coordinate(new WgsCoordinate(1, 1))
.name(new NonLocalizedString("entrance"))
.walkAccessible(true)
.carAccessible(true)
.build();

return new VehicleParkingEntranceVertex(entrance);
}

private State[] traverse(Vertex fromV, Edge edge, StreetSearchRequest request) {
var state = new State(fromV, request);

Expand Down

0 comments on commit 76cba9c

Please sign in to comment.