As a form of smoothing we use the previous speed value instead. This makes sense because the zero duration segments have to be very short, potentially also zero length.
86 lines
2.6 KiB
Gherkin
86 lines
2.6 KiB
Gherkin
@routing @speed @annotations
|
|
Feature: Annotations
|
|
|
|
Scenario: Ensure that turn penalties aren't included in annotations
|
|
Given the profile "turnbot"
|
|
Given a grid size of 100 meters
|
|
Given the node map
|
|
"""
|
|
h i
|
|
j k l m
|
|
"""
|
|
|
|
And the query options
|
|
| annotations | duration,speed,weight |
|
|
|
|
And the ways
|
|
| nodes | highway |
|
|
| hk | residential |
|
|
| il | residential |
|
|
| jk | residential |
|
|
| lk | residential |
|
|
| lm | residential |
|
|
|
|
When I route I should get
|
|
| from | to | route | a:speed | a:weight |
|
|
| h | j | hk,jk,jk | 6.7:6.7 | 15:15 |
|
|
| i | m | il,lm,lm | 6.7:6.7 | 15:15 |
|
|
| j | m | jk,lm | 6.7:6.7:6.7 | 15:15:15 |
|
|
|
|
|
|
Scenario: There should be different forward/reverse datasources
|
|
Given the profile "testbot"
|
|
|
|
And the node map
|
|
"""
|
|
a b c d e f g h i
|
|
"""
|
|
|
|
And the ways
|
|
| nodes | highway |
|
|
| abcdefghi | primary |
|
|
|
|
And the contract extra arguments "--segment-speed-file {speeds_file}"
|
|
And the customize extra arguments "--segment-speed-file {speeds_file}"
|
|
|
|
# Note: 180km/h == 50m/s for speed annotations
|
|
And the speed file
|
|
"""
|
|
1,2,180,1
|
|
2,1,180,1
|
|
3,4,180,1
|
|
5,6,180,1
|
|
8,7,180,1
|
|
"""
|
|
And the query options
|
|
| annotations | datasources,speed |
|
|
|
|
When I route I should get
|
|
| from | to | route | a:datasources | a:speed |
|
|
| a | i | abcdefghi,abcdefghi | 1:0:1:0:1:0:0:0 | 50:10:50:10:50:10:10:10 |
|
|
| i | a | abcdefghi,abcdefghi | 0:1:0:0:0:0:0:1 | 10:50:10:10:10:10:10:50 |
|
|
|
|
Scenario: Speed annotations should handle zero segments
|
|
Given the profile "testbot"
|
|
|
|
Given the node map
|
|
"""
|
|
a -- b --- c
|
|
|
|
|
d
|
|
"""
|
|
|
|
And the ways
|
|
| nodes |
|
|
| abc |
|
|
| cd |
|
|
|
|
# This test relies on the snapping to the EBN cd to introduce a zero segment after the turn
|
|
And the query options
|
|
| annotations | speed,distance,duration,nodes |
|
|
| bearings | 90,5;180,5 |
|
|
|
|
When I route I should get
|
|
| from | to | route | a:speed | a:distance | a:duration | a:nodes |
|
|
| a | c | abc,abc | 10:10:10 | 249.998641:299.931643:0 | 25:30:0 | 1:2:3 |
|