From aaf72a9864498fa04324e64c804cfff1f8445cdb Mon Sep 17 00:00:00 2001 From: Vladimir Byko-Ianko Date: Wed, 3 Feb 2016 10:44:23 +0300 Subject: [PATCH] [new downloader] Fixing routing tests. Compatability local_country_files with two components mwms. --- platform/local_country_file.cpp | 7 +++++-- routing/routing_mapping.cpp | 9 +++++++++ routing/routing_tests/routing_mapping_test.cpp | 2 +- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/platform/local_country_file.cpp b/platform/local_country_file.cpp index 87ecc94cca..b643df6540 100644 --- a/platform/local_country_file.cpp +++ b/platform/local_country_file.cpp @@ -33,12 +33,14 @@ void LocalCountryFile::SyncWithDisk() m_files = MapOptions::Nothing; m_mapSize = 0; m_routingSize = 0; - Platform & platform = GetPlatform(); if (platform.GetFileSizeByFullPath(GetPath(MapOptions::Map), m_mapSize)) m_files = SetOptions(m_files, MapOptions::Map); + if (version::IsSingleMwm(GetVersion())) + return; + string const routingPath = GetPath(MapOptions::CarRouting); if (platform.GetFileSizeByFullPath(routingPath, m_routingSize)) m_files = SetOptions(m_files, MapOptions::CarRouting); @@ -69,8 +71,9 @@ uint32_t LocalCountryFile::GetSize(MapOptions filesMask) const uint64_t size64 = 0; if (HasOptions(filesMask, MapOptions::Map)) size64 += m_mapSize; - if (HasOptions(filesMask, MapOptions::CarRouting)) + if (!version::IsSingleMwm(GetVersion()) && HasOptions(filesMask, MapOptions::CarRouting)) size64 += m_routingSize; + uint32_t const size32 = static_cast(size64); ASSERT_EQUAL(size32, size64, ()); return size32; diff --git a/routing/routing_mapping.cpp b/routing/routing_mapping.cpp index 6f249a8801..fe40cf9b2b 100644 --- a/routing/routing_mapping.cpp +++ b/routing/routing_mapping.cpp @@ -62,6 +62,15 @@ RoutingMapping::RoutingMapping(string const & countryFile, MwmSet & index) return; LocalCountryFile const & localFile = m_handle.GetInfo()->GetLocalFile(); + + if (version::IsSingleMwm(localFile.GetVersion())) + { + m_container.Open(localFile.GetPath(MapOptions::Map)); + m_mwmId = m_handle.GetId(); + m_error = IRouter::ResultCode::NoError; + return; + } + if (!HasOptions(localFile.GetFiles(), MapOptions::MapWithCarRouting)) { m_error = IRouter::ResultCode::RouteFileNotExist; diff --git a/routing/routing_tests/routing_mapping_test.cpp b/routing/routing_tests/routing_mapping_test.cpp index 45fe8a33e8..1ae8295c01 100644 --- a/routing/routing_tests/routing_mapping_test.cpp +++ b/routing/routing_tests/routing_mapping_test.cpp @@ -36,7 +36,7 @@ public: m_localFile(GetPlatform().WritableDir(), m_countryFile, 0 /* version */) { m_localFile.SyncWithDisk(); - TEST(m_localFile.OnDisk(MapOptions::MapWithCarRouting), ()); + TEST(m_localFile.OnDisk(MapOptions::Map), ()); GenerateNecessarySections(m_localFile); m_result = m_testSet.Register(m_localFile);