222 lines
5.8 KiB
Gherkin
222 lines
5.8 KiB
Gherkin
@matrix @testbot
|
|
Feature: Basic Distance Matrix
|
|
# note that results are travel time, specified in 1/10th of seconds
|
|
# since testbot uses a default speed of 100m/10s, the result matches
|
|
# the number of meters as long as the way type is the default 'primary'
|
|
|
|
Background:
|
|
Given the profile "testbot"
|
|
|
|
Scenario: Testbot - Travel time matrix of minimal network
|
|
Given the node map
|
|
"""
|
|
a b
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| ab |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | a | b |
|
|
| a | 0 | 10 |
|
|
| b | 10 | 0 |
|
|
|
|
Scenario: Testbot - Travel time matrix with different way speeds
|
|
Given the node map
|
|
"""
|
|
a b c d
|
|
"""
|
|
|
|
And the ways
|
|
| nodes | highway |
|
|
| ab | primary |
|
|
| bc | secondary |
|
|
| cd | tertiary |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | a | b | c | d |
|
|
| a | 0 | 10 | 30 | 60 |
|
|
| b | 10 | 0 | 20 | 50 |
|
|
| c | 30 | 20 | 0 | 30 |
|
|
| d | 60 | 50 | 30 | 0 |
|
|
|
|
Scenario: Testbot - Travel time matrix with fuzzy match
|
|
Given the node map
|
|
"""
|
|
a b
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| ab |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | a | b |
|
|
| a | 0 | 10 |
|
|
| b | 10 | 0 |
|
|
|
|
Scenario: Testbot - Travel time matrix of small grid
|
|
Given the node map
|
|
"""
|
|
a b c
|
|
d e f
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| abc |
|
|
| def |
|
|
| ad |
|
|
| be |
|
|
| cf |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | a | b | e | f |
|
|
| a | 0 | 10 | 20 | 30 |
|
|
| b | 10 | 0 | 10 | 20 |
|
|
| e | 20 | 10 | 0 | 10 |
|
|
| f | 30 | 20 | 10 | 0 |
|
|
|
|
Scenario: Testbot - Travel time matrix of network with unroutable parts
|
|
Given the node map
|
|
"""
|
|
a b
|
|
"""
|
|
|
|
And the ways
|
|
| nodes | oneway |
|
|
| ab | yes |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | a | b |
|
|
| a | 0 | 10 |
|
|
| b | | 0 |
|
|
|
|
Scenario: Testbot - Travel time matrix of network with oneways
|
|
Given the node map
|
|
"""
|
|
x a b y
|
|
d e
|
|
"""
|
|
|
|
And the ways
|
|
| nodes | oneway |
|
|
| abeda | yes |
|
|
| xa | |
|
|
| by | |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | x | y | d | e |
|
|
| x | 0 | 30 | 40 | 30 |
|
|
| y | 50 | 0 | 30 | 20 |
|
|
| d | 20 | 30 | 0 | 30 |
|
|
| e | 30 | 40 | 10 | 0 |
|
|
|
|
Scenario: Testbot - Travel time matrix and with only one source
|
|
Given the node map
|
|
"""
|
|
a b c
|
|
d e f
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| abc |
|
|
| def |
|
|
| ad |
|
|
| be |
|
|
| cf |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | a | b | e | f |
|
|
| a | 0 | 10 | 20 | 30 |
|
|
|
|
Scenario: Testbot - Travel time 3x2 matrix
|
|
Given the node map
|
|
"""
|
|
a b c
|
|
d e f
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| abc |
|
|
| def |
|
|
| ad |
|
|
| be |
|
|
| cf |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | b | e | f |
|
|
| a | 10 | 20 | 30 |
|
|
| b | 0 | 10 | 20 |
|
|
|
|
Scenario: Testbot - All coordinates are from same small component
|
|
Given a grid size of 300 meters
|
|
Given the extract extra arguments "--small-component-size 4"
|
|
Given the node map
|
|
"""
|
|
a b f
|
|
d e g
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| ab |
|
|
| be |
|
|
| ed |
|
|
| da |
|
|
| fg |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | f | g |
|
|
| f | 0 | 30 |
|
|
| g | 30 | 0 |
|
|
|
|
Scenario: Testbot - Coordinates are from different small component and snap to big CC
|
|
Given a grid size of 300 meters
|
|
Given the extract extra arguments "--small-component-size 4"
|
|
Given the node map
|
|
"""
|
|
a b f h
|
|
d e g i
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| ab |
|
|
| be |
|
|
| ed |
|
|
| da |
|
|
| fg |
|
|
| hi |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | f | g | h | i |
|
|
| f | 0 | 30 | 0 | 30 |
|
|
| g | 30 | 0 | 30 | 0 |
|
|
| h | 0 | 30 | 0 | 30 |
|
|
| i | 30 | 0 | 30 | 0 |
|
|
|
|
Scenario: Testbot - Travel time matrix with loops
|
|
Given the node map
|
|
"""
|
|
a 1 2 b
|
|
d 4 3 c
|
|
"""
|
|
|
|
And the ways
|
|
| nodes | oneway |
|
|
| ab | yes |
|
|
| bc | yes |
|
|
| cd | yes |
|
|
| da | yes |
|
|
|
|
When I request a travel time matrix I should get
|
|
| | 1 | 2 | 3 | 4 |
|
|
| 1 | 0 | 10 +-1 | 40 +-1 | 50 +-1 |
|
|
| 2 | 70 +-1 | 0 | 30 +-1 | 40 +-1 |
|
|
| 3 | 40 +-1 | 50 +-1 | 0 | 10 +-1 |
|
|
| 4 | 30 +-1 | 40 +-1 | 70 +-1 | 0 |
|