diff --git a/core/src/main/java/com/graphhopper/routing/util/parsers/BikeCommonAverageSpeedParser.java b/core/src/main/java/com/graphhopper/routing/util/parsers/BikeCommonAverageSpeedParser.java index 29ee9dbb31c..eb598f7d2c0 100644 --- a/core/src/main/java/com/graphhopper/routing/util/parsers/BikeCommonAverageSpeedParser.java +++ b/core/src/main/java/com/graphhopper/routing/util/parsers/BikeCommonAverageSpeedParser.java @@ -160,7 +160,8 @@ else if (way.hasTag("bicycle", "yes")) speed = PUSHING_SECTION_SPEED; // unknown surface } else if (way.hasTag("service")) { speed = highwaySpeeds.get("living_street"); - } else if ("track".equals(highwayValue)) { + } else if ("track".equals(highwayValue) || + "bridleway".equals(highwayValue) ) { if (surfaceSpeed != null) speed = surfaceSpeed; else if (trackTypeSpeeds.containsKey(trackTypeValue)) diff --git a/core/src/test/java/com/graphhopper/routing/util/parsers/BikeTagParserTest.java b/core/src/test/java/com/graphhopper/routing/util/parsers/BikeTagParserTest.java index d9073b381b9..d3088bf3f3e 100644 --- a/core/src/test/java/com/graphhopper/routing/util/parsers/BikeTagParserTest.java +++ b/core/src/test/java/com/graphhopper/routing/util/parsers/BikeTagParserTest.java @@ -305,6 +305,14 @@ public void testSpeedAndPriority() { assertPriorityAndSpeed(VERY_NICE, PUSHING_SECTION_SPEED, way); way.setTag("bicycle", "yes"); assertPriorityAndSpeed(VERY_NICE, 18, way); + + way.clearTags(); + way.setTag("highway", "bridleway"); + assertPriorityAndSpeed(AVOID, PUSHING_SECTION_SPEED, way); + way.setTag("surface", "gravel"); + assertPriorityAndSpeed(AVOID, 12, way); + way.setTag("bicycle", "designated"); + assertPriorityAndSpeed(PREFER, 12, way); } @Test