osrm-backend/features/testbot/mode.feature

287 lines
11 KiB
Gherkin
Raw Normal View History

2013-03-18 10:37:10 -04:00
@routing @testbot @mode
2014-08-16 08:26:08 -04:00
Feature: Testbot - Travel mode
2013-03-18 10:37:10 -04:00
2014-08-09 05:44:35 -04:00
# testbot modes:
# 1 driving
2014-08-09 05:44:35 -04:00
# 2 route
# 3 river downstream
# 4 river upstream
# 5 steps down
# 6 steps up
2013-08-29 13:29:13 -04:00
Background:
2014-08-09 05:44:35 -04:00
Given the profile "testbot"
2016-05-30 11:42:28 -04:00
Given a grid size of 200 meters
2015-08-07 07:03:35 -04:00
Scenario: Testbot - Always announce mode change
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b c d
"""
2015-08-07 07:03:35 -04:00
And the ways
| nodes | highway | name |
| ab | residential | foo |
| bc | river | foo |
| cd | residential | foo |
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| a | d | foo,foo,foo,foo | driving,river downstream,driving,driving |
| b | d | foo,foo,foo | river downstream,driving,driving |
2016-02-13 13:17:30 -05:00
Scenario: Testbot - Compressed Modes
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b c d e f g
"""
2016-02-13 13:17:30 -05:00
And the ways
| nodes | highway | name |
| abc | residential | road |
| cde | river | liquid |
| efg | residential | solid |
When I route I should get
2016-04-01 05:39:47 -04:00
| from | to | route | modes |
| a | g | road,liquid,solid,solid | driving,river downstream,driving,driving |
| c | g | liquid,solid,solid | river downstream,driving,driving |
2015-08-07 07:03:35 -04:00
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Modes in each direction, different forward/backward speeds
2014-08-16 06:27:26 -04:00
Given the node map
2016-09-30 03:33:08 -04:00
"""
0 1
a b
"""
2014-08-16 06:27:26 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway | oneway |
| ab | river | |
2014-08-16 06:27:26 -04:00
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| a | 0 | ab,ab | river downstream,river downstream |
| a | b | ab,ab | river downstream,river downstream |
| 0 | 1 | ab,ab | river downstream,river downstream |
| 0 | b | ab,ab | river downstream,river downstream |
| b | 1 | ab,ab | river upstream,river upstream |
| b | a | ab,ab | river upstream,river upstream |
| 1 | 0 | ab,ab | river upstream,river upstream |
| 1 | a | ab,ab | river upstream,river upstream |
2014-08-16 06:27:26 -04:00
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Modes in each direction, same forward/backward speeds
2014-08-09 05:44:35 -04:00
Given the node map
2016-09-30 03:33:08 -04:00
"""
0 1
a b
"""
2014-08-09 05:44:35 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway |
| ab | steps |
2014-08-09 05:44:35 -04:00
When I route I should get
2016-05-30 11:42:28 -04:00
| from | to | route | modes | time |
| 0 | 1 | ab,ab | steps down,steps down | 120s +-1 |
| 1 | 0 | ab,ab | steps up,steps up | 120s +-1 |
2014-08-09 05:44:35 -04:00
2016-04-25 05:16:51 -04:00
@oneway
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Modes for oneway, different forward/backward speeds
2014-08-09 05:44:35 -04:00
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b
"""
2014-08-09 05:44:35 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway | oneway |
| ab | river | yes |
2014-08-09 05:44:35 -04:00
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| a | b | ab,ab | river downstream,river downstream |
| b | a | | |
2014-08-09 05:44:35 -04:00
2014-08-16 08:26:08 -04:00
@oneway
Scenario: Testbot - Modes for oneway, same forward/backward speeds
2014-08-09 05:44:35 -04:00
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b
"""
2014-08-11 08:08:00 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway | oneway |
| ab | steps | yes |
2014-08-11 08:08:00 -04:00
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| a | b | ab,ab | steps down,steps down |
| b | a | | |
2014-08-11 08:08:00 -04:00
2016-04-25 05:16:51 -04:00
@oneway
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Modes for reverse oneway, different forward/backward speeds
2014-08-11 08:08:00 -04:00
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b
"""
2014-08-09 05:44:35 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway | oneway |
| ab | river | -1 |
2014-08-09 05:44:35 -04:00
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| a | b | | |
| b | a | ab,ab | river upstream,river upstream |
2014-08-16 06:27:26 -04:00
2014-08-16 08:26:08 -04:00
@oneway
Scenario: Testbot - Modes for reverse oneway, same forward/backward speeds
2014-08-16 06:27:26 -04:00
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b
"""
2014-08-16 06:27:26 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway | oneway |
| ab | steps | -1 |
2014-08-09 05:44:35 -04:00
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| a | b | | |
| b | a | ab,ab | steps up,steps up |
2013-08-29 13:29:13 -04:00
2016-04-25 05:16:51 -04:00
@via
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Mode should be set at via points
2013-08-29 13:29:13 -04:00
Given the node map
2016-09-30 03:33:08 -04:00
"""
a 1 b
"""
2013-03-18 10:37:10 -04:00
2013-08-29 13:29:13 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway |
| ab | river |
2013-03-18 10:37:10 -04:00
2013-08-29 13:29:13 -04:00
When I route I should get
2016-04-01 05:39:47 -04:00
| waypoints | route | modes |
| a,1,b | ab,ab,ab,ab | river downstream,river downstream,river downstream,river downstream |
| b,1,a | ab,ab,ab,ab | river upstream,river upstream,river upstream,river upstream |
2014-08-12 04:02:29 -04:00
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Starting at a tricky node
Given the node map
2016-09-30 03:33:08 -04:00
"""
a
b c
"""
2014-08-12 08:18:02 -04:00
2014-08-16 08:26:08 -04:00
And the ways
| nodes | highway |
| ab | river |
| bc | primary |
2014-08-12 08:18:02 -04:00
2014-08-16 08:26:08 -04:00
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| b | a | ab,ab | river upstream,river upstream |
2014-08-12 08:18:02 -04:00
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Mode changes on straight way without name change
Given the node map
2016-09-30 03:33:08 -04:00
"""
a 1 b 2 c
"""
2014-08-12 04:02:29 -04:00
2014-08-16 08:26:08 -04:00
And the ways
| nodes | highway | name |
| ab | primary | Avenue |
| bc | river | Avenue |
2014-08-12 04:02:29 -04:00
2014-08-16 08:26:08 -04:00
When I route I should get
2016-04-01 05:39:47 -04:00
| from | to | route | modes |
| a | c | Avenue,Avenue,Avenue | driving,river downstream,river downstream |
| c | a | Avenue,Avenue,Avenue | river upstream,driving,driving |
| 1 | 2 | Avenue,Avenue,Avenue | driving,river downstream,river downstream |
| 2 | 1 | Avenue,Avenue,Avenue | river upstream,driving,driving |
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Mode for routes
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b
c d e f
"""
2014-08-14 04:51:24 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway | route | duration |
| ab | primary | | |
| bc | | ferry | 0:01 |
| cd | primary | | |
| de | primary | | |
| ef | primary | | |
2014-08-14 04:51:24 -04:00
When I route I should get
2016-04-01 05:39:47 -04:00
| from | to | route | modes |
| a | d | ab,bc,cd,cd | driving,route,driving,driving |
| d | a | cd,bc,ab,ab | driving,route,driving,driving |
| c | a | bc,ab,ab | route,driving,driving |
| d | b | cd,bc,bc | driving,route,route |
| a | c | ab,bc,bc | driving,route,route |
| b | d | bc,cd,cd | route,driving,driving |
| a | f | ab,bc,cd,de,ef,ef | driving,route,driving,driving,driving,driving |
2014-08-16 08:26:08 -04:00
Scenario: Testbot - Modes, triangle map
Given the node map
2016-09-30 03:33:08 -04:00
"""
d
2
6 5
a 0 b c
4 1
3
e
"""
2014-08-14 04:51:24 -04:00
And the ways
2014-08-16 08:26:08 -04:00
| nodes | highway | oneway |
| abc | primary | |
| cd | primary | yes |
| ce | river | |
| de | primary | |
2014-08-14 04:51:24 -04:00
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| 0 | 1 | abc,ce,de,de | driving,river downstream,driving,driving |
| 1 | 0 | de,ce,abc,abc | driving,river upstream,driving,driving |
| 0 | 2 | abc,cd,cd | driving,driving,driving |
| 2 | 0 | cd,de,ce,abc,abc | driving,driving,river upstream,driving,driving |
| 0 | 3 | abc,ce,ce | driving,river downstream,river downstream |
| 3 | 0 | ce,abc,abc | river upstream,driving,driving |
| 4 | 3 | ce,ce | river downstream,river downstream |
| 3 | 4 | ce,ce | river upstream,river upstream |
| 3 | 1 | ce,de,de | river downstream,driving,driving |
| 1 | 3 | de,ce,ce | driving,river upstream,river upstream |
| a | e | abc,ce,ce | driving,river downstream,river downstream |
| e | a | ce,abc,abc | river upstream,driving,driving |
| a | d | abc,cd,cd | driving,driving,driving |
| d | a | de,ce,abc,abc | driving,river upstream,driving,driving |
2014-08-19 05:35:31 -04:00
Scenario: Testbot - River in the middle
Given the node map
2016-09-30 03:33:08 -04:00
"""
a b c
d
e f g
"""
2014-08-19 05:35:31 -04:00
And the ways
| nodes | highway |
| abc | primary |
| cde | river |
| efg | primary |
When I route I should get
2016-03-31 20:23:12 -04:00
| from | to | route | modes |
| a | g | abc,cde,efg,efg | driving,river downstream,driving,driving |
| b | f | abc,cde,efg,efg | driving,river downstream,driving,driving |
| e | c | cde,cde | river upstream,river upstream |
| e | b | cde,abc,abc | river upstream,driving,driving |
| e | a | cde,abc,abc | river upstream,driving,driving |
| c | e | cde,cde | river downstream,river downstream |
| c | f | cde,efg,efg | river downstream,driving,driving |
| c | g | cde,efg,efg | river downstream,driving,driving |