Commit Graph

234 Commits

Author SHA1 Message Date
karenzshea
564a29141e add testing geojson files 2017-06-02 10:00:07 +02:00
Moritz Kobitzsch
a92674022a make all u-turns continue 2017-06-01 12:39:10 +02:00
Moritz Kobitzsch
ceaf065d0e don't collapse highway ramps into uturns (#4074) 2017-06-01 12:39:10 +02:00
Daniel J. Hofmann
0317bbb35d Splits via tests into car and testbot domain, resolves #4061 2017-05-30 16:38:51 +02:00
Daniel J. Hofmann
a4a6ed7e38 Puts approach test into car domain 2017-05-30 16:37:05 +02:00
Karen Shea
799a677e7a Conditional turn restriction support (#3841)
* optionally include condition and via node coords in InputRestrictionContainer

* only write conditionals to disk, custom serialization for restrictions

* conditional turn lookup, reuse timezone validation from
extract-conditionals

* adapt updater to use coordinates/osm ids, remove internal to external map

* add utc time now parameter to contraction

* only compile timezone code where libshp is found, adapt test running

* slight refactor, more tests

* catch invalid via nodes in restriction parsing, set default cucumber
origin to guinée

* add another run to test mld routed paths

* cosmetic review changes

* Simplify Timezoner for windows build

* Split declaration and parsing parts for opening hours

* adjust conditional tests to run without shapefiles

* always include parse conditionals option

* Adjust travis timeout

* Added dummy TZ shapefile with test timezone polygons

* [skip ci] update changelog
2017-05-11 12:13:52 +02:00
Michael Krasnyk
6484fed190 Remove generate-edge-lookup argument in feature tests 2017-05-05 22:15:05 +00:00
Patrick Niklaus
9974b8b1da Apply traffic light penalty also for non-turns 2017-04-20 13:52:13 +00:00
Michael Krasnyk
c81baae1b9 Fix incorrect weight fallback for distance-based weights 2017-04-19 08:28:38 +02:00
Michael Krasnyk
c39690195e
Added traffic tests to MLD testing 2017-03-17 13:20:33 +01:00
Michael Krasnyk
fe5d1a6e74
Add MLD testing to cucumber tests 2017-03-17 12:27:47 +01:00
Patrick Niklaus
596890a0f4 Fix spelling of access=customer_s_ and add to the restricted list way whitelisted highways 2017-03-06 16:14:26 +00:00
Patrick Niklaus
cc3a4899a2 Only allow restricted access for road of certain highway type 2017-03-03 16:03:41 +00:00
Patrick Niklaus
fbf7521769 Other flakey test 2017-03-02 15:24:51 +00:00
Patrick Niklaus
7c911b3891 Mark test as flaky and track in own issue. 2017-03-02 14:55:52 +00:00
karenzshea
d32ebd57e6 simplify test, add intersection turn test 2017-03-02 14:55:52 +00:00
karenzshea
8e43c8cbce add restricted penalty on NoTurn turns 2017-03-02 14:55:52 +00:00
Moritz Kobitzsch
18a50d357f remove suppressed new names from new tests 2017-02-25 12:17:22 +00:00
Moritz Kobitzsch
6c3390f14d refactor of post-processing
- moves collapse into a dedicated set of functions / files
 - make collapse scenarios distinct (slight performance cost)
 - reduce verbosity for short name segments (now actually working, was supposed to do so before)
2017-02-25 12:17:22 +00:00
yuryleb
5739c27ef4 Corrected car's bridge feature tests 2017-02-23 22:35:15 +00:00
karenzshea
c2727f2029 expose data about turning onto restricted roads to turn function 2017-02-20 12:40:51 +00:00
Daniel Patterson
73ce44028f Allow routing on toll roads by default (#3712) 2017-02-14 15:20:10 -08:00
Patrick Niklaus
b906f2a628 Fix side road penalties and add test 2017-02-13 09:28:35 +00:00
Patrick Niklaus
2e6428e917 Fix HOV lane support with penalties 2017-02-10 14:27:28 +00:00
karenzshea
1f3a8d4538 remove units from rate columns in routability testing 2017-02-10 14:27:28 +00:00
karenzshea
1c25070572 provide rate and weight headers for checking in routability tests 2017-02-10 14:27:28 +00:00
karenzshea
24fe881d03 hov_penalty, use min penalty rather than aggregate 2017-02-10 14:27:28 +00:00
karenzshea
25ab51f4f0 remove calls to handlers now in handle_penalties 2017-02-10 14:27:28 +00:00
karenzshea
46f96af360 fix merge conflicts 2017-02-10 14:27:28 +00:00
Daniel J. Hofmann
919386bdaf Adds access=permissive routability scenarios, see #3435. 2017-02-08 14:27:55 +00:00
Patrick Niklaus
ae835cc04f Blacklist steps from the car profile 2017-02-08 14:27:55 +00:00
Michael Krasnyk
1628ebb871 Fix assertions in car profile, resolves #3629
restrict direction if access tag is missing and can not be derived
from highway tag

http://www.openstreetmap.org/way/4282676
http://www.openstreetmap.org/way/4621857
http://www.openstreetmap.org/way/4898368
2017-02-03 12:41:26 +00:00
Emil Tin
11ee632cfe car: add tests oneway:<mode> tags 2017-02-01 16:50:18 +01:00
Emil Tin
97c0a74c04 factor out common lua code to helper files 2017-02-01 16:50:18 +01:00
Michael Krasnyk
ad594cb2e4 Update review findings 2017-01-27 11:19:37 +01:00
Patrick Niklaus
279f8aabfb Allow specifing a weight for routing that is independent of duration 2017-01-27 11:19:37 +01:00
Michael Krasnyk
fbc7189cf8 Added speed round-off error test 2017-01-20 12:31:45 +01:00
Michael Krasnyk
e8167b2e4e Use round for float to fixed coordinate transformations 2017-01-20 12:31:45 +01:00
Daniel J. Hofmann
94854b5c90 Adds barrier=gate regression tests, see #581 2016-12-15 12:03:24 +01:00
Daniel J. Hofmann
98659fb0a0 Adds failing tests for directional access overrides, discovered in #3345 2016-12-13 17:37:42 +01:00
Daniel J. Hofmann
875f482203 Refactors and improves the Sliproad Handler, resolves #3109 2016-12-07 19:22:03 +01:00
Emil Tin
9461c83511 car profile: handle forward/backward access 2016-12-05 14:15:47 +01:00
Emil Tin
532cbfce13 profiles: Directional helper, some car refactoring 2016-12-05 14:15:47 +01:00
Michael Krasnyk
e343f71541 Refactor Hilbert values computation 2016-11-28 14:17:12 +01:00
Daniel J. Hofmann
6ac9617d49 Adapt test to returning ref, Take Pronunciation into Account, Fixes name change heuristic usage in UTurn check 2016-11-08 12:14:23 +01:00
Daniel Patterson
ceddfada3d Don't mark all lanes as designated when there are blank lane specifiers in the tag. 2016-10-25 14:37:59 -06:00
Daniel J. Hofmann
19f00589de Removes constant speed offset from calibration two years ago, resolves #3023.
Our fine-tuned profiles are better in modelling real speed by now. This
constant offset is no longer needed. We still scale maxspeed, though.

https://github.com/Project-OSRM/osrm-backend/issues/3053
2016-10-22 06:48:49 +02:00
Moritz Kobitzsch
ecee13bffa actually calculate distance instead of using .distance which is a timing value 2016-10-20 12:27:02 +02:00
Daniel J. Hofmann
ee4fb89336 Adds missing routable service tags
http://taginfo.openstreetmap.org/keys/service#values
2016-10-18 22:11:13 +02:00
karenzshea
f540485cb0 Add a speed for driveway to service speeds 2016-10-17 15:45:31 -07:00
karenzshea
5617d3886d Fix cucumber support code for routability testing to actually test
input/output for speed and time values, adjust resulting broken tests
2016-10-17 15:45:11 -07:00
Daniel J. Hofmann
a13cf3f2be Route over alternating oneways but not reversible ones, closes #2837.
- alternating: high frequency, route over them with penalty
- reversible: low frequency, do not route over them - time dependence

- http://wiki.openstreetmap.org/wiki/Tag:oneway%3Dreversible
- http://wiki.openstreetmap.org/wiki/Tag:oneway%3Dalternating

This distinction was made at the Elbe-Labe Meetup in Dresden, with
accompanying Wiki pages and tagging scheme. Thanks all involed!

- https://github.com/Project-OSRM/osrm-backend/issues/2837
- http://wiki.openstreetmap.org/wiki/Key:oneway
2016-10-12 12:53:07 +02:00
Emil Tin
7cbb1807e7 cucumber: change syntax of node maps 2016-10-11 09:07:48 +02:00
karenzshea
5d9fc83db4 adjust test cases that specify coords without leading 0 2016-10-03 13:15:39 -04:00
Moritz Kobitzsch
10b93c6908 re-introduce space into summaries 2016-09-30 14:36:09 +02:00
Moritz Kobitzsch
e4d0d49300 move summaries to car profile, test for references, use boost adaptors 2016-09-30 10:59:23 +02:00
Daniel J. Hofmann
a63b10972b Handle HOV designated-only Lanes, resolves #2929
In https://github.com/Project-OSRM/osrm-backend/issues/2711 we made
`hov=designated` routability configurable.

We want to handle designated-only lanes in the same way. Example:

    hov:lanes:forward=designated|designated
    hov:lanes:backward=designated

should have more or less the same effects as

    hov=designated

In contrast

    hov:lanes:forward=designated|no|yes hov:lanes:backward=yes

should not be handled. See

    https://github.com/Project-OSRM/osrm-backend/issues/2711

for explanation wrt. tag semantics with the difference that
backward/forward only set the backward/forward mode to inaccessible.

References:
- http://wiki.openstreetmap.org/wiki/Key:hov#hov:lanes.3D.2A
2016-09-21 10:56:42 +02:00
Patrick Niklaus
7d124ce54d Close GH-2795: Rewrite cucumber test caching (and support logic). Fixes #2745 2016-09-19 14:13:44 -07:00
Daniel J. Hofmann
e6fe9d0d67 Fixes issue where two ways with same name but different pronunciation where deduplicated, resolves #2860 2016-09-09 18:28:44 +02:00
karenzshea
dcc1b5ab2b return name and reference separately 2016-09-08 14:28:23 +02:00
Moritz Kobitzsch
938dff011f handle all our new strings correctly, introduce rotary_pronunciation 2016-09-07 16:09:13 +02:00
Moritz Kobitzsch
802b93fa9a fix testcases, one case only works by turn restriction, needs investigation 2016-09-07 12:04:17 +02:00
Moritz Kobitzsch
6fac14dbd8 ignore invalid only_* restrictions 2016-09-01 09:14:01 +02:00
karenzshea
146eb3a20e add test case for ignoring unknown restrictions 2016-08-31 09:52:05 -04:00
Patrick Niklaus
315823cce1 Use service tag to penaltize alleys and forbid emergency access 2016-08-29 14:15:22 +02:00
Patrick Niklaus
12d478784b
Enable toll roads by default again.
Currently we don't route over the Golden Gate bridge by default.
This sets the value to false by default. To test the behavior for
tolls when ignored, we would need issue #2781 implemented.
2016-08-19 13:01:15 +02:00
Daniel Patterson
176c2244ad Catch and report errors during osrm-contract tests. 2016-08-05 14:19:22 -07:00
Daniel J. Hofmann
8bee57b0b0 Makes toll=yes way's routability configurable in profiles.
The primary use-case is conditionally filtering ways such as:

https://www.openstreetmap.org/edit#map=18/38.94198/-77.28127

which we are guiding the user onto in the route from DC to IAD:

http://map.project-osrm.org/?z=12&center=38.934443%2C-77.167969&loc=38.902656%2C-77.029095&loc=38.952210%2C-77.453424&hl=en&alt=0

This changeset makes `toll=yes` configurable in the profiles, disabling
them by default. Neither do we support time-based fees nor vehicle
category fees at the moment.

References:
- http://wiki.openstreetmap.org/wiki/Key:toll
2016-08-04 14:29:22 +02:00
Daniel J. Hofmann
583aaff286 Makes designated HOV way's routability configurable in profiles.
Why only `hov=designated` and not all access tags, such as `hov:yes`,
`hov=no` and so on? From the Wiki:

- designated: The way is designated to high occupancy vehicles.
- yes: High occupancy vehicles are allowed. This by itself does not imply that other vehicles are restricted from using the way.
- no: High occupancy vehicles are not allowed on the way. This by itself does not imply that other vehicle types are allowed to use it.

The primary use-case is conditionally filtering ways such as:

http://www.openstreetmap.org/way/11198593#map=19/37.82571/-122.30521&layers=D

In addition there is a notion of HOV lanes for lane handling:

http://wiki.openstreetmap.org/wiki/Key:hov#hov:lanes.3D.2A

This changeset does not handle lanes at all, only designated HOV ways.
For HOV lane support, a logic similar to the lane access handling needs
to be implemented. This needs to go hand in hand with the existing lane
handling introduced in:

7d076e9344

References:
- #2711
- http://wiki.openstreetmap.org/wiki/Key:access
- http://wiki.openstreetmap.org/wiki/Key:hov#Values
2016-08-03 12:24:43 +02:00
Daniel Patterson
d012b44b7f
Filter out edges that have any speed=0 segments.
They become non-snappable and non-routable.  Note that a single segment
of speed=0 will eliminate the entire edge.
2016-07-30 23:53:38 +02:00
Moritz Kobitzsch
efa29edf09 basic turn lane handling 2016-06-27 10:07:41 +02:00
Moritz Kobitzsch
1dfdb38d4a improve collapse-handling 2016-06-06 10:05:18 +02:00
Daniel J. Hofmann
b78207ddd8 Revert "Add implied oneway cucumber tests for mini roundabouts"
This reverts commit bd707b0cfc.

Conflicts:
	features/bicycle/oneway.feature
	features/car/oneway.feature
2016-06-02 15:00:44 +02:00
Daniel J. Hofmann
c490752ca7 highway=motorway_link does not imply oneway, fixes #1662
References:
- http://wiki.openstreetmap.org/wiki/Tag:highway%3Dmotorway_link#Tagging_oneway
- http://wiki.openstreetmap.org/wiki/Tag:highway%3Dmotorway_link
- http://wiki.openstreetmap.org/wiki/Tag:highway%3Dmotorway
2016-06-02 13:05:50 +02:00
Patrick Niklaus
0a53775fb3
Expose pronunciation in RouteStep
Uses name:pronunciation by default for cars.
2016-06-01 23:17:57 +02:00
Daniel J. Hofmann
bd707b0cfc Add implied oneway cucumber tests for mini roundabouts 2016-06-01 20:17:48 +02:00
Lauren Budorick
346146d834 Address comments from b89164c14e (#2346) 2016-05-02 08:00:27 -07:00
Lauren Budorick
b8f7569e93 Implement arbitrary turn penalty file IO and integration (#2306)
Closes #1830
2016-04-29 00:48:13 -07:00
Moritz Kobitzsch
be5b49e391
Fix local path looping, fixes #2309 2016-04-25 19:37:59 +02:00
karenzshea
58c13d2c07 remove movable bridge travel mode references 2016-04-19 12:59:33 -04:00
Moritz Kobitzsch
fa0a5040e5 adding tests for guidance 2016-04-08 10:43:22 +02:00
Lauren Budorick
1a8097f810 Update car features to reflect not cutting off arrival instruction 2016-04-05 22:59:14 +02:00
Lauren Budorick
926290dd9c enter_roundabout -> roundabout-exit (these are still off by one @mokob ?) 2016-04-05 22:59:14 +02:00
Lauren Budorick
2f793473cc head/destination -> depart/arrive to reflect guidance API changes; minor fixes for roundabout tests 2016-04-05 22:59:14 +02:00
Lauren Budorick
6244063073 #2155 is fixed 2016-04-05 22:59:14 +02:00
Jeff Miccolis
958199ffef Allow for different rounding in car-maxspeed fixture 2016-04-05 22:59:14 +02:00
Lauren Budorick
126d2f85ac Mode changes, guidance comments, fix turns 2016-04-05 22:59:14 +02:00
Daniel J. Hofmann
efe6faabfd Adds tests for routing over delivery ways and nodes; see #2150. 2016-04-04 14:00:54 +02:00
Daniel J. Hofmann
c70d138eb9 Spelling: Hierachy vs Hierarchy 2016-04-04 13:58:55 +02:00
Daniel Patterson
017ff53702 Code review updates. 2016-03-03 13:25:01 -08:00
Daniel Patterson
49441fe204 Make forward/reverse weight/offset calculated at query time,
rather than being cached in the StaticRTree.  This means we
can freely apply traffic data and not have stale values lying
around.  It reduces the size of the RTree on disk, at the expense
of some additional data in RAM.
2016-03-03 10:49:12 -08:00
Patrick Niklaus
fc8768b79b Add test for car mode snapping 2015-12-16 22:03:46 +01:00
Patrick Niklaus
783d455bd7 Add support for advisory speed limits
This adds support for the maxspeed:advisory class of speed tags.
2015-11-19 21:25:12 +01:00
Lauren Budorick
5ac024788e Parse specific restriction:* tags based on profile exceptions 2015-09-10 15:52:26 -07:00
Daniel J. Hofmann
345d5e8d9e Make an exception for block barriers in bicycle and foot profile.
This adds `barrier=block` exceptions to the respective white lists.

In addition this adds tests to check for the exception in bicycle and
foot profiles and makes sure cars are still not able to cross them.

Checked with:

    cucumber --tags @barrier -p verify

References:

- https://github.com/Project-OSRM/osrm-backend/issues/1643
- http://wiki.openstreetmap.org/wiki/Tag:barrier%3Dblock
2015-09-07 12:23:21 +02:00
Daniel J. Hofmann
b6ef558c86 Make pedestrian roads marked as destination routable with car profile.
Check provided tests with:

    cucumber --tags @access -p verify

References:

- https://github.com/Project-OSRM/osrm-backend/issues/1617
- http://wiki.openstreetmap.org/wiki/Tag:highway%3Dpedestrian
- http://wiki.openstreetmap.org/wiki/Key:motorcar
- http://wiki.openstreetmap.org/wiki/Key:access
2015-09-03 17:46:20 +02:00
Daniel Patterson
120303e6e3 Fixed test case that uses the car profile. 2015-09-03 17:01:11 +02:00
Daniel J. Hofmann
db30836b53 Add rising bollard exception to barriers for car profile.
This handles `barrier=bollard` with `bollard=rising`, by making an
exception to the barrier whitelist. Barriers tagged as such do no longer
require an explicit access tag.

This also adds corresponding tests, check this out:

    cucumber --tags @barrier

References:

- http://wiki.openstreetmap.org/wiki/Tag:barrier%3Dbollard
- http://wiki.openstreetmap.org/wiki/Key:bollard
- https://github.com/Project-OSRM/osrm-backend/issues/1616
2015-08-25 14:52:45 +02:00
Lauren Budorick
0a53dccd4c Use .round instead of .to_i for cucumber speeds 2015-08-25 00:06:57 +02:00
Patrick Niklaus
8a2652f53d Only penaltize bidirectional ways if they have 1 lane 2015-06-27 16:26:18 +02:00