Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Byko-Ianko <v.bykoianko@corp.mail.ru>2016-05-25 18:40:55 +0300
committerVladimir Byko-Ianko <v.bykoianko@corp.mail.ru>2016-05-27 14:17:14 +0300
commit6361f1f99a6415e528101e87433a227a42be6297 (patch)
tree5bf0aecbdae0b38fcef57aa58cd206e9558b4048 /routing
parentc51114a4779d93665fdeac54a0e2600bc2195933 (diff)
[bicycle routing] Tests on bicycle routing alone oneway roads.
Diffstat (limited to 'routing')
-rw-r--r--routing/routing_integration_tests/bicycle_turn_test.cpp45
1 files changed, 43 insertions, 2 deletions
diff --git a/routing/routing_integration_tests/bicycle_turn_test.cpp b/routing/routing_integration_tests/bicycle_turn_test.cpp
index f3906d80d4..81f02a9942 100644
--- a/routing/routing_integration_tests/bicycle_turn_test.cpp
+++ b/routing/routing_integration_tests/bicycle_turn_test.cpp
@@ -17,11 +17,13 @@ UNIT_TEST(RussiaMoscowSevTushinoParkBicycleWayTurnTest)
IRouter::ResultCode const result = routeResult.second;
TEST_EQUAL(result, IRouter::NoError, ());
- integration::TestTurnCount(route, 1);
+ integration::TestTurnCount(route, 3);
integration::GetNthTurn(route, 0).TestValid().TestDirection(TurnDirection::TurnLeft);
+ integration::GetNthTurn(route, 1).TestValid().TestDirection(TurnDirection::TurnLeft);
+ integration::GetNthTurn(route, 2).TestValid().TestDirection(TurnDirection::TurnLeft);
- integration::TestRouteLength(route, 752.);
+ integration::TestRouteLength(route, 2350.0);
}
UNIT_TEST(RussiaMoscowGerPanfilovtsev22BicycleWayTurnTest)
@@ -67,3 +69,42 @@ UNIT_TEST(RussiaMoscowSevTushinoParkBicycleOnePointTurnTest)
TEST_EQUAL(route.GetTurns().size(), 0, ());
integration::TestRouteLength(route, 0.0);
}
+
+UNIT_TEST(RussiaMoscowPlanernaiOnewayCarRoadTurnTest)
+{
+ TRouteResult const routeResult = integration::CalculateRoute(
+ integration::GetBicycleComponents(), MercatorBounds::FromLatLon(55.87012, 37.44028),
+ {0.0, 0.0}, MercatorBounds::FromLatLon(55.87153, 37.43928));
+
+ Route const & route = *routeResult.first;
+ IRouter::ResultCode const result = routeResult.second;
+ TEST_EQUAL(result, IRouter::NoError, ());
+
+ integration::TestTurnCount(route, 4);
+
+ integration::GetNthTurn(route, 0).TestValid().TestDirection(TurnDirection::TurnLeft);
+ integration::GetNthTurn(route, 1).TestValid().TestDirection(TurnDirection::TurnLeft);
+ integration::GetNthTurn(route, 2).TestValid().TestDirection(TurnDirection::TurnSlightRight);
+ integration::GetNthTurn(route, 3).TestValid().TestDirection(TurnDirection::TurnLeft);
+
+ integration::TestRouteLength(route, 420.0);
+}
+
+UNIT_TEST(RussiaMoscowSvobodiOnewayBicycleWayTurnTest)
+{
+ TRouteResult const routeResult = integration::CalculateRoute(
+ integration::GetBicycleComponents(), MercatorBounds::FromLatLon(55.87277, 37.44002),
+ {0.0, 0.0}, MercatorBounds::FromLatLon(55.87362, 37.43853));
+
+ Route const & route = *routeResult.first;
+ IRouter::ResultCode const result = routeResult.second;
+ TEST_EQUAL(result, IRouter::NoError, ());
+
+ integration::TestTurnCount(route, 3);
+
+ integration::GetNthTurn(route, 0).TestValid().TestDirection(TurnDirection::TurnLeft);
+ integration::GetNthTurn(route, 1).TestValid().TestDirection(TurnDirection::TurnLeft);
+ integration::GetNthTurn(route, 2).TestValid().TestDirection(TurnDirection::TurnLeft);
+
+ integration::TestRouteLength(route, 768.0);
+}