DistanceMapImpl implements DistanceMap { @Override public long distanceTo(PlanningLocation location) { return distanceMatrixRow.distanceTo(location.getId()).millis(); } DistanceMapImpl(DistanceMatrixRow distanceMatrixRow); @Override long distanceTo(PlanningLocation location);  }
@Test void distance_map_should_return_value_from_distance_matrix_row() { PlanningLocation location2 = PlanningLocationFactory.testLocation(2); Distance distance = Distance.ofMillis(45000); DistanceMatrixRow matrixRow = locationId -> distance; DistanceMapImpl distanceMap = new DistanceMapImpl(matrixRow); assertThat(distanceMap.distanceTo(location2)).isEqualTo(distance.millis()); }