180 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
			
		
		
	
	
			180 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
| @routing  @guidance
 | |
| Feature: End Of Road Instructions
 | |
| 
 | |
|     Background:
 | |
|         Given the profile "car"
 | |
|         Given a grid size of 10 meters
 | |
| 
 | |
|     Scenario: End of Road with through street
 | |
|         Given the node map
 | |
|             """
 | |
|                 c
 | |
|             a e b
 | |
|               f d
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes  | highway |
 | |
|             | aeb    | primary |
 | |
|             | cbd    | primary |
 | |
|             | ef     | primary |
 | |
| 
 | |
|        When I route I should get
 | |
|             | waypoints | route       | turns                           |
 | |
|             | a,c       | aeb,cbd,cbd | depart,end of road left,arrive  |
 | |
|             | a,d       | aeb,cbd,cbd | depart,end of road right,arrive |
 | |
| 
 | |
|     Scenario: End of Road with three streets
 | |
|         Given the node map
 | |
|             """
 | |
|                 c
 | |
|             a e b
 | |
|               f d
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes  | highway |
 | |
|             | aeb    | primary |
 | |
|             | cb     | primary |
 | |
|             | bd     | primary |
 | |
|             | ef     | primary |
 | |
| 
 | |
|        When I route I should get
 | |
|             | waypoints | route     | turns                           |
 | |
|             | a,c       | aeb,cb,cb | depart,end of road left,arrive  |
 | |
|             | a,d       | aeb,bd,bd | depart,end of road right,arrive |
 | |
| 
 | |
|     Scenario: End of Road with three streets, slightly angled
 | |
|         Given the node map
 | |
|             """
 | |
|             a e       c
 | |
|               f       b
 | |
|                       d
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes  | highway |
 | |
|             | aeb    | primary |
 | |
|             | cb     | primary |
 | |
|             | bd     | primary |
 | |
|             | ef     | primary |
 | |
| 
 | |
|        When I route I should get
 | |
|             | waypoints | route     | turns                           |
 | |
|             | a,c       | aeb,cb,cb | depart,end of road left,arrive  |
 | |
|             | a,d       | aeb,bd,bd | depart,end of road right,arrive |
 | |
| 
 | |
|     Scenario: End of Road with three streets, slightly angled
 | |
|         Given the node map
 | |
|             """
 | |
|                       c
 | |
|               f       b
 | |
|             a e       d
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes  | highway |
 | |
|             | aeb    | primary |
 | |
|             | ef     | primary |
 | |
|             | cb     | primary |
 | |
|             | bd     | primary |
 | |
| 
 | |
|        When I route I should get
 | |
|             | waypoints | route     | turns                           |
 | |
|             | a,c       | aeb,cb,cb | depart,end of road left,arrive  |
 | |
|             | a,d       | aeb,bd,bd | depart,end of road right,arrive |
 | |
| 
 | |
|     Scenario: End of Road with through street, slightly angled
 | |
|         Given the node map
 | |
|             """
 | |
|             a e       c
 | |
|               f       b
 | |
|                       d
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes  | highway |
 | |
|             | aeb    | primary |
 | |
|             | ef     | primary |
 | |
|             | cbd    | primary |
 | |
| 
 | |
|        When I route I should get
 | |
|             | waypoints | route       | turns                           |
 | |
|             | a,c       | aeb,cbd,cbd | depart,end of road left,arrive  |
 | |
|             | a,d       | aeb,cbd,cbd | depart,end of road right,arrive |
 | |
| 
 | |
|     Scenario: End of Road with through street, slightly angled
 | |
|         Given the node map
 | |
|             """
 | |
|                       c
 | |
|               f       b
 | |
|             a e       d
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes  | highway |
 | |
|             | aeb    | primary |
 | |
|             | ef     | primary |
 | |
|             | cbd    | primary |
 | |
| 
 | |
|        When I route I should get
 | |
|             | waypoints | route       | turns                           |
 | |
|             | a,c       | aeb,cbd,cbd | depart,end of road left,arrive  |
 | |
|             | a,d       | aeb,cbd,cbd | depart,end of road right,arrive |
 | |
| 
 | |
|     Scenario: End of Road with two ramps - prefer ramp over end of road
 | |
|         Given the node map
 | |
|             """
 | |
|                 c
 | |
|             a e b
 | |
|               f d
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes  | highway       |
 | |
|             | aeb    | primary       |
 | |
|             | ef     | primary       |
 | |
|             | bc     | motorway_link |
 | |
|             | bd     | motorway_link |
 | |
| 
 | |
|        When I route I should get
 | |
|             | waypoints | route     | turns                       |
 | |
|             | a,c       | aeb,bc,bc | depart,on ramp left,arrive  |
 | |
|             | a,d       | aeb,bd,bd | depart,on ramp right,arrive |
 | |
| 
 | |
|     # http://www.openstreetmap.org/#map=19/52.49907/13.41836
 | |
|     @end-of-road @negative
 | |
|     Scenario: Don't Handle Circles as End-Of-Road
 | |
|         Given the node map
 | |
|             """
 | |
|               r       q
 | |
|                       a s
 | |
|                   b
 | |
|                           j
 | |
| 
 | |
|             l   c         i       k
 | |
| 
 | |
|                           h
 | |
|             m
 | |
|                 d                 n
 | |
|                   e     g
 | |
|                     f
 | |
|                     o   p
 | |
|             """
 | |
| 
 | |
|         And the ways
 | |
|             | nodes        | highway     | name  | oneway |
 | |
|             | abcdefghijsa | secondary   | kotti | yes    |
 | |
|             | ki           | secondary   | skal  | yes    |
 | |
|             | cl           | secondary   | skal  | yes    |
 | |
|             | md           | secondary   | skal  | yes    |
 | |
|             | gn           | secondary   | skal  | yes    |
 | |
|             | qa           | tertiary    | adal  | no     |
 | |
|             | br           | residential | rei   | yes    |
 | |
|             | fo           | secondary   | kstr  | yes    |
 | |
|             | pg           | secondary   | kstr  | yes    |
 | |
| 
 | |
|         When I route I should get
 | |
|             | waypoints | route                | turns                               | #                                                      |
 | |
|             | k,l       | skal,kotti,skal,skal | depart,turn right,turn right,arrive | # could be a case to find better turn instructions for |
 |