diff --git a/features/bicycle/access.feature b/features/bicycle/access.feature index a3345ed9a..868322b08 100644 --- a/features/bicycle/access.feature +++ b/features/bicycle/access.feature @@ -182,3 +182,9 @@ Feature: Bike - Access tags on ways | bridleway | | yes | | x | | bridleway | designated | | | | | bridleway | | | | | + + Scenario: Bike - Tram with oneway when access is implicit + Then routability should be + | highway | railway | oneway | bothw | + | residential | tram | yes | x | + diff --git a/profiles/bicycle.lua b/profiles/bicycle.lua index 2c16f33ef..910808737 100644 --- a/profiles/bicycle.lua +++ b/profiles/bicycle.lua @@ -259,10 +259,10 @@ function way_function (way, result) result.forward_speed = platform_speeds[public_transport] result.backward_speed = platform_speeds[public_transport] elseif use_public_transport and railway and railway_speeds[railway] then - result.forward_mode = mode.train - result.backward_mode = mode.train - -- railways - if access and access_tag_whitelist[access] then + result.forward_mode = mode.train + result.backward_mode = mode.train + -- railways + if (not access and highway) or access_tag_whitelist[access] then result.forward_speed = railway_speeds[railway] result.backward_speed = railway_speeds[railway] end