164 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
			
		
		
	
	
			164 lines
		
	
	
		
			6.2 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 |
 |