Due to some rather complex logic that tries to calculate intersection angles by looking further up the road, it's possible to return an intersection view that is missing a u-turn - something which is assumed to exist in later guidance calculations. We apply a fix here by ensuring the u-turn is always included in the returned view.
		
			
				
	
	
		
			32 lines
		
	
	
		
			807 B
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			807 B
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
@routing @foot
 | 
						|
Feature: Foot - Intersections
 | 
						|
 | 
						|
    Background:
 | 
						|
        Given the profile "foot"
 | 
						|
        Given a grid size of 2 meters
 | 
						|
 | 
						|
    # https://github.com/Project-OSRM/osrm-backend/issues/6218
 | 
						|
    Scenario: Foot - Handles non-planar intersections
 | 
						|
        Given the node map
 | 
						|
 | 
						|
            """
 | 
						|
                f
 | 
						|
                |
 | 
						|
                a
 | 
						|
                |
 | 
						|
            b---c---d
 | 
						|
                |
 | 
						|
                e
 | 
						|
            """
 | 
						|
 | 
						|
        And the ways
 | 
						|
            | nodes | highway | foot | layer |
 | 
						|
            | ac    | footway | yes  | 0     |
 | 
						|
            | bc    | footway | yes  | 0     |
 | 
						|
            | cd    | footway | yes  | 0     |
 | 
						|
            | cef   | footway | yes  | 1     |
 | 
						|
 | 
						|
        When I route I should get
 | 
						|
            | from | to | route    |
 | 
						|
            | a    | d  | ac,cd,cd |
 |