From e528875c523161e571b8ee8121a9beba748dfe83 Mon Sep 17 00:00:00 2001 From: Vladimir Byko-Ianko Date: Wed, 31 Jan 2018 10:33:29 +0300 Subject: [PATCH] Adding three route integration tests on side angle correction in turn generation. --- .../routing_integration_tests/turn_test.cpp | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/routing/routing_integration_tests/turn_test.cpp b/routing/routing_integration_tests/turn_test.cpp index ada6ff0147..e5675e68c9 100644 --- a/routing/routing_integration_tests/turn_test.cpp +++ b/routing/routing_integration_tests/turn_test.cpp @@ -510,3 +510,48 @@ UNIT_TEST(RussiaMoscowMikoiankNoUTurnTest) TEST_EQUAL(result, IRouter::NoError, ()); integration::TestTurnCount(route, 0 /* expectedTurnCount */); } + +UNIT_TEST(RussiaMoscowLeningradskiyPrptToTTKTest) +{ + TRouteResult const routeResult = + integration::CalculateRoute(integration::GetVehicleComponents(), + MercatorBounds::FromLatLon(55.78926, 37.55706), {0., 0.}, + MercatorBounds::FromLatLon(55.78925, 37.57110)); + + Route const & route = *routeResult.first; + IRouter::ResultCode const result = routeResult.second; + + TEST_EQUAL(result, IRouter::NoError, ()); + integration::TestTurnCount(route, 1 /* expectedTurnCount */); + integration::GetNthTurn(route, 0).TestValid().TestDirection(CarDirection::TurnSlightRight); +} + +UNIT_TEST(RussiaMoscowLeningradskiyPrptDublToTTKTest) +{ + TRouteResult const routeResult = + integration::CalculateRoute(integration::GetVehicleComponents(), + MercatorBounds::FromLatLon(55.79059, 37.55345), {0., 0.}, + MercatorBounds::FromLatLon(55.78925, 37.57110)); + + Route const & route = *routeResult.first; + IRouter::ResultCode const result = routeResult.second; + + TEST_EQUAL(result, IRouter::NoError, ()); + integration::TestTurnCount(route, 1 /* expectedTurnCount */); + integration::GetNthTurn(route, 0).TestValid().TestDirection(CarDirection::TurnSlightLeft); +} + +UNIT_TEST(RussiaMoscowSvobodaStTest) +{ + TRouteResult const routeResult = + integration::CalculateRoute(integration::GetVehicleComponents(), + MercatorBounds::FromLatLon(55.82484, 37.45151), {0., 0.}, + MercatorBounds::FromLatLon(55.81941, 37.45073)); + + Route const & route = *routeResult.first; + IRouter::ResultCode const result = routeResult.second; + + TEST_EQUAL(result, IRouter::NoError, ()); + integration::TestTurnCount(route, 1 /* expectedTurnCount */); + integration::GetNthTurn(route, 0).TestValid().TestDirection(CarDirection::TurnSlightLeft); +}