forked from organicmaps/organicmaps
Adding integration tests on path with the same start and finish.
This commit is contained in:
parent
62985c22ba
commit
30103dd4f1
3 changed files with 34 additions and 2 deletions
|
@ -54,3 +54,16 @@ UNIT_TEST(RussiaMoscowSalameiNerisPossibleTurnCorrectionBicycleWayTurnTest)
|
|||
|
||||
integration::GetNthTurn(route, 0).TestValid().TestDirection(TurnDirection::TurnSlightRight);
|
||||
}
|
||||
|
||||
UNIT_TEST(RussiaMoscowSevTushinoParkBicycleOnePointTurnTest)
|
||||
{
|
||||
m2::PointD const point = MercatorBounds::FromLatLon(55.8719, 37.4464);
|
||||
TRouteResult const routeResult = integration::CalculateRoute(
|
||||
integration::GetBicycleComponents(), point, {0.0, 0.0}, point);
|
||||
|
||||
Route const & route = *routeResult.first;
|
||||
IRouter::ResultCode const result = routeResult.second;
|
||||
TEST_EQUAL(result, IRouter::NoError, ());
|
||||
TEST_EQUAL(route.GetTurns().size(), 0, ());
|
||||
integration::TestRouteLength(route, 0.0);
|
||||
}
|
||||
|
|
|
@ -515,3 +515,16 @@ UNIT_TEST(MoscowChistiePrudiSelectPointsInConnectedGraph)
|
|||
MercatorBounds::FromLatLon(55.76613, 37.63769), {0., 0.},
|
||||
MercatorBounds::FromLatLon(55.76593, 37.63893), 134.02);
|
||||
}
|
||||
|
||||
UNIT_TEST(RussiaMoscowSevTushinoParkPedestrianOnePointTurnTest)
|
||||
{
|
||||
m2::PointD const point = MercatorBounds::FromLatLon(55.8719, 37.4464);
|
||||
TRouteResult const routeResult = integration::CalculateRoute(
|
||||
integration::GetPedestrianComponents(), point, {0.0, 0.0}, point);
|
||||
|
||||
Route const & route = *routeResult.first;
|
||||
IRouter::ResultCode const result = routeResult.second;
|
||||
TEST_EQUAL(result, IRouter::NoError, ());
|
||||
integration::TestTurnCount(route, 0);
|
||||
integration::TestRouteLength(route, 0.0);
|
||||
}
|
||||
|
|
|
@ -36,6 +36,8 @@ using TRouterFactory =
|
|||
|
||||
namespace
|
||||
{
|
||||
double kErrorMeters = 1.0;
|
||||
double kErrorSeconds = 1.0;
|
||||
void ChangeMaxNumberOfOpenFiles(size_t n)
|
||||
{
|
||||
struct rlimit rlp;
|
||||
|
@ -242,7 +244,9 @@ namespace integration
|
|||
void TestRouteLength(Route const & route, double expectedRouteMeters,
|
||||
double relativeError)
|
||||
{
|
||||
double const delta = expectedRouteMeters * relativeError;
|
||||
double delta = expectedRouteMeters * relativeError;
|
||||
if (delta < kErrorMeters)
|
||||
delta = kErrorMeters;
|
||||
double const routeMeters = route.GetTotalDistanceMeters();
|
||||
TEST(my::AlmostEqualAbs(routeMeters, expectedRouteMeters, delta),
|
||||
("Route length test failed. Expected:", expectedRouteMeters, "have:", routeMeters, "delta:", delta));
|
||||
|
@ -250,7 +254,9 @@ namespace integration
|
|||
|
||||
void TestRouteTime(Route const & route, double expectedRouteSeconds, double relativeError)
|
||||
{
|
||||
double const delta = expectedRouteSeconds * relativeError;
|
||||
double delta = expectedRouteSeconds * relativeError;
|
||||
if (delta < kErrorSeconds)
|
||||
delta = kErrorSeconds;
|
||||
double const routeSeconds = route.GetTotalTimeSec();
|
||||
TEST(my::AlmostEqualAbs(routeSeconds, expectedRouteSeconds, delta),
|
||||
("Route time test failed. Expected:", expectedRouteSeconds, "have:", routeSeconds, "delta:", delta));
|
||||
|
|
Loading…
Add table
Reference in a new issue