171 lines
5.3 KiB
Gherkin
171 lines
5.3 KiB
Gherkin
@routing @snap @testbot
|
|
Feature: Snap start/end point to the nearest way
|
|
|
|
Background:
|
|
Given the profile "testbot"
|
|
|
|
Scenario: Snap to nearest protruding oneway
|
|
Given the node map
|
|
| | 1 | | 2 | |
|
|
| 8 | | n | | 3 |
|
|
| | w | c | e | |
|
|
| 7 | | s | | 4 |
|
|
| | 6 | | 5 | |
|
|
|
|
And the ways
|
|
| nodes |
|
|
| nc |
|
|
| ec |
|
|
| sc |
|
|
| wc |
|
|
|
|
When I route I should get
|
|
| from | to | route |
|
|
| 1 | c | nc,nc |
|
|
| 2 | c | nc,nc |
|
|
| 3 | c | ec,ec |
|
|
| 4 | c | ec,ec |
|
|
| 5 | c | sc,sc |
|
|
| 6 | c | sc,sc |
|
|
| 7 | c | wc,wc |
|
|
| 8 | c | wc,wc |
|
|
|
|
Scenario: Snap to nearest edge of a square
|
|
Given the node map
|
|
| 4 | 5 | 6 | 7 |
|
|
| 3 | a | | u |
|
|
| 2 | | | |
|
|
| 1 | d | | b |
|
|
|
|
And the ways
|
|
| nodes |
|
|
| aub |
|
|
| adb |
|
|
|
|
When I route I should get
|
|
| from | to | route |
|
|
| 1 | b | adb,adb |
|
|
| 2 | b | adb,adb |
|
|
| 6 | b | aub,aub |
|
|
| 7 | b | aub,aub |
|
|
|
|
Scenario: Snap to edge right under start/end point
|
|
Given the node map
|
|
| d | e | f | g |
|
|
| c | | | h |
|
|
| b | | | i |
|
|
| a | l | k | j |
|
|
|
|
And the ways
|
|
| nodes |
|
|
| abcd |
|
|
| defg |
|
|
| ghij |
|
|
| jkla |
|
|
|
|
When I route I should get
|
|
| from | to | route |
|
|
| a | b | abcd,abcd |
|
|
| a | c | abcd,abcd |
|
|
| a | d | abcd,abcd |
|
|
| a | e | abcd,defg,defg |
|
|
| a | f | abcd,defg,defg |
|
|
| a | h | jkla,ghij,ghij |
|
|
| a | i | jkla,ghij,ghij |
|
|
| a | j | jkla,jkla |
|
|
| a | k | jkla,jkla |
|
|
| a | l | jkla,jkla |
|
|
|
|
Scenario: Snapping in viaroute
|
|
Given the extract extra arguments "--small-component-size 4"
|
|
Given the node map
|
|
| a | | c | e |
|
|
| b | | d | f |
|
|
|
|
And the ways
|
|
| nodes |
|
|
| ab |
|
|
| cd |
|
|
| df |
|
|
| fe |
|
|
| ec |
|
|
|
|
When I route I should get
|
|
| from | to | route |
|
|
| a | b | ab,ab |
|
|
| a | d | cd,cd |
|
|
| c | d | cd,cd |
|
|
|
|
Scenario: Snap to correct way at large scales
|
|
Given a grid size of 1000 meters
|
|
Given the node map
|
|
| | | | a |
|
|
| x | | | b |
|
|
| | | | c |
|
|
|
|
And the ways
|
|
| nodes |
|
|
| xa |
|
|
| xb |
|
|
| xc |
|
|
|
|
When I route I should get
|
|
| from | to | route |
|
|
| x | a | xa,xa |
|
|
| x | b | xb,xb |
|
|
| x | c | xc,xc |
|
|
| a | x | xa,xa |
|
|
| b | x | xb,xb |
|
|
| c | x | xc,xc |
|
|
|
|
Scenario: Find edges within 100m, and the same from 1km
|
|
Given a grid size of 100 meters
|
|
Given the node map
|
|
| p | | | | | | | | i | | | | | | | | j |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | 8 | | 1 | | 2 | | | | | | |
|
|
| | | | | | | | h | a | b | | | | | | | |
|
|
| o | | | | | | 7 | g | x | c | 3 | | | | | | k |
|
|
| | | | | | | | f | e | d | | | | | | | |
|
|
| | | | | | | 6 | | 5 | | 4 | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| | | | | | | | | | | | | | | | | |
|
|
| n | | | | | | | | m | | | | | | | | l |
|
|
|
|
Given the ways
|
|
| nodes |
|
|
| xa |
|
|
| xb |
|
|
| xc |
|
|
| xd |
|
|
| xe |
|
|
| xf |
|
|
| xg |
|
|
| xh |
|
|
|
|
When I route I should get
|
|
| from | to | route |
|
|
| x | 1 | xa,xa |
|
|
| x | 2 | xb,xb |
|
|
| x | 3 | xc,xc |
|
|
| x | 4 | xd,xd |
|
|
| x | 5 | xe,xe |
|
|
| x | 6 | xf,xf |
|
|
| x | 7 | xg,xg |
|
|
| x | 8 | xh,xh |
|
|
| x | i | xa,xa |
|
|
| x | j | xb,xb |
|
|
| x | k | xc,xc |
|
|
| x | l | xd,xd |
|
|
| x | m | xe,xe |
|
|
| x | n | xf,xf |
|
|
| x | o | xg,xg |
|
|
| x | p | xh,xh |
|