/
srv
/
osrm
/
osrm-backend
/
features
/
testbot
/
/srv/osrm/osrm-backend/features/testbot
mkdir
upload
Name
Size
Mode
Actions
64bit.feature
856
0644
edit
dl
rm
alternative.feature
1734
0644
edit
dl
rm
alternative_loop.feature
2328
0644
edit
dl
rm
annotations.feature
3838
0644
edit
dl
rm
approaches.feature
9011
0644
edit
dl
rm
bad.feature
2335
0644
edit
dl
rm
basic.feature
9262
0644
edit
dl
rm
bearing.feature
8226
0644
edit
dl
rm
bearing_param.feature
4881
0644
edit
dl
rm
compression.feature
637
0644
edit
dl
rm
continue_straight.feature
2511
0644
edit
dl
rm
distance.feature
6996
0644
edit
dl
rm
distance_matrix.feature
23582
0644
edit
dl
rm
duration.feature
1318
0644
edit
dl
rm
duration_matrix.feature
23189
0644
edit
dl
rm
example.feature
1300
0644
edit
dl
rm
exclude.feature
3865
0644
edit
dl
rm
exclude_regressions.feature
2407
0644
edit
dl
rm
fastest.feature
1106
0644
edit
dl
rm
ferry.feature
7935
0644
edit
dl
rm
fixed.feature
5148
0644
edit
dl
rm
geometry.feature
712
0644
edit
dl
rm
graph.feature
1038
0644
edit
dl
rm
impedance.feature
3370
0644
edit
dl
rm
load.feature
2363
0644
edit
dl
rm
loop.feature
2913
0644
edit
dl
rm
matching.feature
23225
0644
edit
dl
rm
maxspeed.feature
1332
0644
edit
dl
rm
mode.feature
11092
0644
edit
dl
rm
multi_level_routing.feature
8916
0644
edit
dl
rm
nil.feature
1100
0644
edit
dl
rm
oneway.feature
1075
0644
edit
dl
rm
oneway_phantom.feature
2648
0644
edit
dl
rm
opposite.feature
582
0644
edit
dl
rm
origin.feature
2680
0644
edit
dl
rm
overlap.feature
1100
0644
edit
dl
rm
penalty.feature
5161
0644
edit
dl
rm
planetary.feature
2474
0644
edit
dl
rm
projection.feature
2983
0644
edit
dl
rm
routes.feature
1074
0644
edit
dl
rm
snap.feature
5131
0644
edit
dl
rm
snap_intersection.feature
18784
0644
edit
dl
rm
speed.feature
1005
0644
edit
dl
rm
status.feature
3808
0644
edit
dl
rm
summary.feature
2342
0644
edit
dl
rm
time.feature
8240
0644
edit
dl
rm
traffic_speeds.feature
6899
0644
edit
dl
rm
traffic_speeds_overflow.feature
1060
0644
edit
dl
rm
traffic_turn_penalties.feature
2633
0644
edit
dl
rm
trip.feature
12981
0644
edit
dl
rm
turn_penalty.feature
1031
0644
edit
dl
rm
utf.feature
4303
0644
edit
dl
rm
via.feature
12213
0644
edit
dl
rm
weight.feature
13634
0644
edit
dl
rm
zero-speed-updates.feature
4965
0644
edit
dl
rm
Edit:
/srv/osrm/osrm-backend/features/testbot/matching.feature
(23225B)
@match @testbot Feature: Basic Map Matching Background: Given the profile "testbot" Given a grid size of 10 meters Given the query options | geometries | geojson | Scenario: Testbot - Map matching with outlier that has no candidate Given a grid size of 100 meters Given the node map """ a b c d 1 """ And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | data_version | | ab1d | 0 1 2 3 | ad | | Scenario: Data_version test on matching Given a grid size of 100 meters Given the node map """ a b c d 1 """ And the extract extra arguments "--data_version cucumber_data_version" And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | data_version | | ab1d | 0 1 2 3 | ad | cucumber_data_version | Scenario: Testbot - Map matching with trace splitting Given the node map """ a b c d e """ And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | | abcd | 0 1 62 63 | ab,cd | Scenario: Testbot - Map matching with trace splitting suppression Given the query options | gaps | ignore | Given the node map """ a b c d e """ And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | | abcd | 0 1 62 63 | abcd | Scenario: Testbot - Map matching with trace tidying. Clean case. Given a grid size of 100 meters Given the query options | tidy | true | Given the node map """ a b c d e """ And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | | abcd | 0 10 20 30 | abcd | Scenario: Testbot - Map matching with trace tidying. Dirty case by ts. Given a grid size of 100 meters Given the query options | tidy | true | Given the node map """ a b c d e """ And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | | abacd | 0 10 12 20 30 | abcd | Scenario: Testbot - Map matching with trace tidying. Dirty case by dist. Given a grid size of 8 meters Given the query options | tidy | true | Given the node map """ a q b c d e """ And the ways | nodes | oneway | | aqbcd | no | When I match I should get | trace | matchings | | abcbd | abbd | Scenario: Testbot - Map matching with core factor Given the contract extra arguments "--core 0.8" Given the node map """ a b c d e """ And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | | abcd | 0 1 2 3 | abcd | Scenario: Testbot - Map matching with small distortion Given the node map """ a b c d e f h k """ # The second way does not need to be a oneway # but the grid spacing triggers the uturn # detection on f And the ways | nodes | oneway | | abcde | no | | bfhke | yes | When I match I should get | trace | matchings | | afcde | abcde | Scenario: Testbot - Map matching with oneways Given a grid size of 10 meters Given the node map """ a b c d e f g h """ And the ways | nodes | oneway | | abcd | yes | | hgfe | yes | When I match I should get | trace | matchings | | dcba | hgfe | Scenario: Testbot - Matching with oneway streets Given a grid size of 10 meters Given the node map """ a b c d e f g h """ And the ways | nodes | oneway | | ab | yes | | bc | yes | | cd | yes | | hg | yes | | gf | yes | | fe | yes | When I match I should get | trace | matchings | | dcba | hgfe | | efgh | abcd | Scenario: Testbot - request duration annotations Given the query options | annotations | duration | Given the node map """ a b c d e g h i """ And the ways | nodes | oneway | | abcdegh | no | | ci | no | And the speed file """ 1,2,36,10 """ And the contract extra arguments "--segment-speed-file {speeds_file}" And the customize extra arguments "--segment-speed-file {speeds_file}" When I match I should get | trace | matchings | a:duration | | ach | ach | 1:1,0:1:1:2:1 | Scenario: Testbot - Duration details Given the query options | annotations | duration,nodes | Given the node map """ a b c d e g h i """ And the ways | nodes | oneway | | abcdegh | no | | ci | no | And the speed file """ 1,2,36,10 """ And the contract extra arguments "--segment-speed-file {speeds_file}" And the customize extra arguments "--segment-speed-file {speeds_file}" When I match I should get | trace | matchings | a:duration | | abeh | abeh | 1:0,1:1:1,0:2:1 | | abci | abci | 1:0,1,0:1 | # The following is the same as the above, but separated for readability (line length) When I match I should get | trace | matchings | a:nodes | | abeh | abeh | 1:2:3,2:3:4:5,4:5:6:7 | | abci | abci | 1:2:3,2:3,2:3:8 | Scenario: Testbot - Regression test for #3037 Given the query options | overview | simplified | | geometries | geojson | Given the node map """ a--->---b--->---c | | | | ^ | | | | e--->---f--->---g """ And the ways | nodes | oneway | | abc | yes | | efg | yes | | ae | yes | | cg | yes | | fb | yes | When I match I should get | trace | matchings | geometry | | efbc | efbc | 1,0.999638,1.000359,0.999638,1.000359,1,1.000719,1 | Scenario: Testbot - Geometry details using geojson Given the query options | overview | full | | geometries | geojson | Given the node map """ a b c d """ And the ways | nodes | oneway | | abc | no | | bd | no | When I match I should get | trace | matchings | geometry | | abd | abd | 1,1,1.00009,1,1.00009,1,1.00009,0.99991 | Scenario: Testbot - Geometry details using polyline Given the query options | overview | full | | geometries | polyline | Given the node map """ a b c d """ And the ways | nodes | oneway | | abc | no | | bd | no | When I match I should get | trace | matchings | geometry | | abd | abd | 1,1,1,1.00009,1,1.00009,0.99991,1.00009 | Scenario: Testbot - Geometry details using polyline6 Given the query options | overview | full | | geometries | polyline6 | Given the node map """ a b c d """ And the ways | nodes | oneway | | abc | no | | bd | no | When I match I should get | trace | matchings | geometry | | abd | abd | 1,1,1,1.00009,1,1.00009,0.99991,1.00009 | Scenario: Testbot - Matching alternatives count test Given the node map """ a b c d e f g h i """ And the ways | nodes | oneway | | abcdef | yes | | dghi | yes | When I match I should get | trace | matchings | alternatives | | abcdef | abcde | 0,0,0,1,1,1 | Scenario: Testbot - Speed greater than speed threshold Given a grid size of 100 meters Given the query options | geometries | geojson | Given the node map """ a b ---- x | | y --- c d """ And the ways | nodes | oneway | | abxycd | no | When I match I should get | trace | timestamps | matchings | | abcd | 0 1 2 3 | ab,cd | Scenario: Testbot - Speed less than speed threshold Given a grid size of 100 meters Given the query options | geometries | geojson | Given the node map """ a b c d """ And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | matchings | | abcd | 0 1 2 3 | abcd | Scenario: Testbot - Huge gap in the coordinates Given a grid size of 100 meters Given the query options | geometries | geojson | | gaps | ignore | Given the node map """ a b c d ---- x | | y ---- z ---- efjk """ And the ways | nodes | oneway | | abcdxyzefjk | no | When I match I should get | trace | timestamps | matchings | | abcdefjk | 0 1 2 3 50 51 52 53 | abcdefjk | # Regression test 1 for issue 3176 Scenario: Testbot - multiple segments: properly expose OSM IDs Given the query options | annotations | true | Given the node map """ a-1-b--c--d--e--f-2-g """ And the nodes | node | id | | a | 1 | | b | 2 | | c | 3 | | d | 4 | | e | 5 | | f | 6 | | g | 7 | And the ways | nodes | oneway | | ab | no | | bc | no | | cd | no | | de | no | | ef | no | | fg | no | When I match I should get | trace | a:nodes | | 12 | 1:2:3:4:5:6:7 | | 21 | 7:6:5:4:3:2:1 | # Regression test 2 for issue 3176 Scenario: Testbot - same edge: properly expose OSM IDs Given the query options | annotations | true | Given the node map """ a-1-b--c--d--e-2-f """ And the nodes | node | id | | a | 1 | | b | 2 | | c | 3 | | d | 4 | | e | 5 | | f | 6 | And the ways | nodes | oneway | | abcdef | no | When I match I should get | trace | a:nodes | | 12 | 1:2:3:4:5:6 | | 21 | 6:5:4:3:2:1 | Scenario: Matching with waypoints param for start/end Given the node map """ a-----b---c | | d | | e """ And the ways | nodes | oneway | | abc | no | | bde | no | Given the query options | waypoints | 0;3 | When I match I should get | trace | code | matchings | waypoints | | abde | Ok | abde | ae | Scenario: Matching with waypoints param that were tidied away Given the node map """ a - b - c - e | f | g """ And the ways | nodes | oneway | | abce | no | | cfg | no | Given the query options | tidy | true | | waypoints | 0;2;5 | When I match I should get | trace | code | matchings | waypoints | | abccfg | Ok | abcfg | acg | Scenario: Testbot - Map matching refuses to use waypoints with trace splitting Given the node map """ a b c d e """ Given the query options | waypoints | 0;3 | And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | timestamps | code | | abcd | 0 1 62 63 | NoMatch | Scenario: Testbot - Map matching invalid waypoints Given the node map """ a b c d e """ Given the query options | waypoints | 0;4 | And the ways | nodes | oneway | | abcd | no | When I match I should get | trace | code | | abcd | InvalidOptions | Scenario: Matching fail with waypoints param missing start/end Given the node map """ a-----b---c | | d | | e """ And the ways | nodes | oneway | | abc | no | | bde | no | Given the query options | waypoints | 1;3 | When I match I should get | trace | code | | abde | InvalidValue | Scenario: Testbot - Map matching with outlier that has no candidate and waypoint parameter Given a grid size of 100 meters Given the node map """ a b c d 1 """ And the ways | nodes | oneway | | abcd | no | Given the query options | waypoints | 0;2;3 | When I match I should get | trace | timestamps | code | | ab1d | 0 1 2 3 | NoMatch | Scenario: Regression test - avoid collapsing legs of a tidied split trace Given a grid size of 20 meters Given the node map """ a--b--f | | e--c---d--g """ Given the query options | tidy | true | And the ways | nodes | oneway | | abf | no | | be | no | | ecdg | no | When I match I should get | trace | timestamps | matchings | code | | abbecd | 10 11 27 1516914902 1516914913 1516914952 | ab,ecd | Ok | Scenario: Regression test - waypoints trimming too much geometry # fixes bug in map matching collapsing that was dropping path geometries # after segments that had 0 distance in internal route results Given the node map """ ad | | | | |e g b--------------c f h """ And the ways | nodes | | ab | | bc | Given the query options | waypoints | 0;4 | | overview | full | When I match I should get | trace | geometry | code | | defgh | 1,1,1,0.999457,1.000674,0.999457 | Ok | @match @testbot Scenario: Regression test - waypoints trimming too much geometry Given the profile "testbot" Given a grid size of 10 meters Given the query options | geometries | geojson | Given the node map """ bh | | | c g\ \k \ \ \ j f """ And the ways | nodes | | hc | | cf | Given the query options | waypoints | 0;3 | | overview | full | When I match I should get | trace | geometry | code | | bgkj | 1.000135,1,1.000135,0.999638,1.000386,0.999132 | Ok | @match @testbot # Regression test for issue #4919 Scenario: Regression test - non-uturn maneuver preferred over uturn Given the profile "testbot" Given a grid size of 10 meters Given the query options | geometries | geojson | Given the node map """ e ; ; a----hb-----c ; ; d """ And the ways | nodes | | abc | | dbe | Given the query options | waypoints | 0;2 | | overview | full | | steps | true | When I match I should get | trace | geometry | turns | code | | abc | 1,0.999729,1.000269,0.999729,1.000539,0.999729 | depart,arrive | Ok | | abd | 1,0.999729,1.000269,0.999729,1.000269,0.999457 | depart,turn right,arrive | Ok | | abe | 1,0.999729,1.000269,0.999729,1.000269,1 | depart,turn left,arrive | Ok | | ahd | 1,0.999729,1.000269,0.999729,1.000269,0.999457 | depart,turn right,arrive | Ok | | ahe | 1,0.999729,1.000269,0.999729,1.000269,1 | depart,turn left,arrive | Ok | @match @testbot Scenario: Regression test - add source phantoms properly (one phantom on one edge) Given the profile "testbot" Given a grid size of 10 meters Given the node map """ a--1-b2-cd3--e """ And the ways | nodes | | ab | | bcd | | de | Given the query options | geometries | geojson | | overview | full | | steps | true | | waypoints | 0;2 | | annotations | duration,weight | | generate_hints | false | When I match I should get | trace | geometry | a:duration | a:weight | duration | | 123 | 1.000135,1,1.000225,1,1.000359,1,1.000404,1,1.000449,1 | 1:1.5:0.5:0.4 | 1:1.5:0.5:0.4 | 3.4 | | 321 | 1.000449,1,1.000404,1,1.000359,1,1.000225,1,1.000135,1 | 0.4:0.5:1.5:1 | 0.4:0.5:1.5:1 | 3.4 | @match @testbot Scenario: Regression test - add source phantom properly (two phantoms on one edge) Given the profile "testbot" Given a grid size of 10 meters Given the node map """ a--1-b23-c4--d """ And the ways | nodes | | ab | | bc | | cd | Given the query options | geometries | geojson | | overview | full | | steps | true | | waypoints | 0;3 | | annotations | duration,weight | | generate_hints | false | When I match I should get | trace | geometry | a:duration | a:weight | duration | | 1234 | 1.000135,1,1.000225,1,1.000404,1,1.000449,1 | 1:2:0.4 | 1:2:0.4 | 3.4 | | 4321 | 1.000449,1,1.000404,1,1.000225,1,1.000135,1 | 0.4:2:1 | 0.4:2:1 | 3.4 | @match @testbot Scenario: Regression test - add source phantom properly (two phantoms on one edge) Given the profile "testbot" Given a grid size of 10 meters Given the node map """ a--12345-b """ And the ways | nodes | | ab | Given the query options | geometries | geojson | | overview | full | | steps | true | | waypoints | 0;3 | | annotations | duration,weight,distance | | generate_hints | false | # These should have the same weights/duration in either direction When I match I should get | trace | geometry | a:distance | a:duration | a:weight | duration | | 2345 | 1.00018,1,1.000314,1 | 14.91466649 | 1.4 | 1.4 | 1.4 | | 4321 | 1.00027,1,1.000135,1 | 15.02596997 | 1.5 | 1.5 | 1.5 |
Save
cmd:
run