1@routing @car @ferry 2Feature: Car - Handle ferry routes 3 4 Background: 5 Given the profile "car" 6 7 Scenario: Car - Use a ferry route 8 Given the node map 9 """ 10 a b c 11 d 12 e f g 13 """ 14 15 And the ways 16 | nodes | highway | route | bicycle | 17 | abc | primary | | | 18 | cde | | ferry | yes | 19 | efg | primary | | | 20 21 When I route I should get 22 | from | to | route | modes | 23 | a | g | abc,cde,efg,efg | driving,ferry,driving,driving | 24 | b | f | abc,cde,efg,efg | driving,ferry,driving,driving | 25 | e | c | cde,cde | ferry,ferry | 26 | e | b | cde,abc,abc | ferry,driving,driving | 27 | e | a | cde,abc,abc | ferry,driving,driving | 28 | c | e | cde,cde | ferry,ferry | 29 | c | f | cde,efg,efg | ferry,driving,driving | 30 | c | g | cde,efg,efg | ferry,driving,driving | 31 32 33 Scenario: Car - Use default speeds to calculate duration if no duration given 34 Given the node map 35 """ 36 a b c 37 d 38 e f g 39 """ 40 41 And the ways 42 | nodes | highway | route | 43 | abc | primary | | 44 | cde | | ferry | 45 | efg | primary | | 46 47 When I route I should get 48 | from | to | route | modes | speed | time | 49 | a | g | abc,cde,efg,efg | driving,ferry,driving,driving | 12 km/h | 173.4s | 50 | b | f | abc,cde,efg,efg | driving,ferry,driving,driving | 9 km/h | 162.4s | 51 | c | e | cde,cde | ferry,ferry | 5 km/h | 151.4s | 52 | e | c | cde,cde | ferry,ferry | 5 km/h | 151.4s | 53 54 Scenario: Car - Properly handle simple durations 55 Given the node map 56 """ 57 a b c 58 d 59 e f g 60 """ 61 62 And the ways 63 | nodes | highway | route | duration | 64 | abc | primary | | | 65 | cde | | ferry | 00:01:00 | 66 | efg | primary | | | 67 68 When I route I should get 69 | from | to | route | modes | speed | time | 70 | a | g | abc,cde,efg,efg | driving,ferry,driving,driving | 24 km/h | 89.4s | 71 | b | f | abc,cde,efg,efg | driving,ferry,driving,driving | 18 km/h | 78.4s | 72 | c | e | cde,cde | ferry,ferry | 11 km/h | 67.4s | 73 | e | c | cde,cde | ferry,ferry | 11 km/h | 67.4s | 74 75 Scenario: Car - Properly handle ISO 8601 durations 76 Given the node map 77 """ 78 a b c 79 d 80 e f g 81 """ 82 83 And the ways 84 | nodes | highway | route | duration | 85 | abc | primary | | | 86 | cde | | ferry | PT1M | 87 | efg | primary | | | 88 89 When I route I should get 90 | from | to | route | modes | speed | time | 91 | a | g | abc,cde,efg,efg | driving,ferry,driving,driving | 24 km/h | 89.4s | 92 | b | f | abc,cde,efg,efg | driving,ferry,driving,driving | 18 km/h | 78.4s | 93 | c | e | cde,cde | ferry,ferry | 11 km/h | 67.4s | 94 | e | c | cde,cde | ferry,ferry | 11 km/h | 67.4s | 95 96 @snapping 97 Scenario: Car - Snapping when using a ferry 98 Given the node map 99 """ 100 a b c d e f 101 """ 102 103 And the ways 104 | nodes | highway | route | duration | 105 | ab | primary | | | 106 | bcde | | ferry | 0:10 | 107 | ef | primary | | | 108 109 When I route I should get 110 | from | to | route | modes | time | 111 | c | d | bcde,bcde | ferry,ferry | 600s | 112 113 Given the query options 114 | geometries | geojson | 115 | overview | full | 116 117 # Note that matching *should* work across unsnappable ferries 118 When I match I should get 119 | trace | geometry | duration | 120 | abcdef| 1,1,1.000899,1,1.000899,1,1.002697,1,1.002697,1,1.003596,1,1.003596,1,1.005394,1,1.005394,1,1.006293,1 | 610.9 | 121