[routing] Routing integration test fix and adding a new one in case of removing go straight maneuver in some cases.

This commit is contained in:
Vladimir Byko-Ianko 2018-12-03 13:41:49 +03:00 committed by Tatiana Yan
parent 3c02b82cf2
commit 388cbe00de

View file

@ -202,7 +202,6 @@ UNIT_TEST(RussiaMoscowTTKVarshavskoeShosseOutTurnTest)
TEST_EQUAL(result, RouterResultCode::NoError, ());
integration::TestTurnCount(route, 2 /* expectedTurnCount */);
integration::GetNthTurn(route, 0).TestValid().TestDirection(CarDirection::ExitHighwayToRight);
integration::GetNthTurn(route, 1).TestValid().TestDirection(CarDirection::GoStraight);
}
UNIT_TEST(RussiaMoscowTTKUTurnTest)
@ -216,12 +215,11 @@ UNIT_TEST(RussiaMoscowTTKUTurnTest)
RouterResultCode const result = routeResult.second;
TEST_EQUAL(result, RouterResultCode::NoError, ());
integration::TestTurnCount(route, 4 /* expectedTurnCount */);
integration::TestTurnCount(route, 3 /* expectedTurnCount */);
integration::GetNthTurn(route, 0).TestValid().TestOneOfDirections(
{CarDirection::TurnSlightRight, CarDirection::TurnRight});
integration::GetNthTurn(route, 1).TestValid().TestDirection(CarDirection::GoStraight);
integration::GetNthTurn(route, 2).TestValid().TestDirection(CarDirection::UTurnLeft);
integration::GetNthTurn(route, 3).TestValid().TestDirection(CarDirection::TurnSlightLeft);
integration::GetNthTurn(route, 1).TestValid().TestDirection(CarDirection::UTurnLeft);
integration::GetNthTurn(route, 2).TestValid().TestDirection(CarDirection::TurnSlightLeft);
}
UNIT_TEST(RussiaMoscowParallelResidentalUTurnAvoiding)
@ -999,3 +997,18 @@ UNIT_TEST(RussiaMoscowKomsomolskyTurnTest)
integration::TestTurnCount(route, 1 /* expectedTurnCount */);
integration::GetNthTurn(route, 0).TestValid().TestDirection(CarDirection::TurnRight);
}
// Test on no go straight direction in case of a route along a big road and pass smaller ones.
UNIT_TEST(RussiaMoscowTTKNoGoStraightTurnTest)
{
TRouteResult const routeResult =
integration::CalculateRoute(integration::GetVehicleComponents<VehicleType::Car>(),
MercatorBounds::FromLatLon(55.78949, 37.5711), {0., 0.},
MercatorBounds::FromLatLon(55.78673, 37.56726));
Route const & route = *routeResult.first;
RouterResultCode const result = routeResult.second;
TEST_EQUAL(result, RouterResultCode::NoError, ());
integration::TestTurnCount(route, 0 /* expectedTurnCount */);
}