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

address_tests.cpp « map_tests « map - github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 2b54ef1fba1b974c257e22a69ff460f57d25e34b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include "testing/testing.hpp"

#include "search/reverse_geocoder.hpp"

#include "indexer/classificator_loader.hpp"
#include "indexer/data_source.hpp"
#include "indexer/search_string_utils.hpp"


using namespace search;
using namespace platform;

namespace
{

void TestAddress(ReverseGeocoder & coder, ms::LatLon const & ll,
                 string const & stName, string const & hNumber)
{
  ReverseGeocoder::Address addr;
  coder.GetNearbyAddress(MercatorBounds::FromLatLon(ll), addr);

  string const key = strings::ToUtf8(GetStreetNameAsKey(addr.m_street.m_name));

  TEST_EQUAL(stName, key, (addr));
  TEST_EQUAL(hNumber, addr.m_building.m_name, (addr));
}

} // namespace

UNIT_TEST(ReverseGeocoder_Smoke)
{
  classificator::Load();

  LocalCountryFile file = LocalCountryFile::MakeForTesting("minsk-pass");

  DataSource dataSource;
  TEST_EQUAL(dataSource.RegisterMap(file).second, MwmSet::RegResult::Success, ());

  ReverseGeocoder coder(dataSource);

  TestAddress(coder, {53.89815, 27.54265}, "улицамясникова", "32");
  TestAddress(coder, {53.89953, 27.54189}, "улицанемига", "42");
  TestAddress(coder, {53.89666, 27.54904}, "советскаяулица", "19");
  TestAddress(coder, {53.89724, 27.54983}, "проспектнезависимости", "11");
  TestAddress(coder, {53.89745, 27.55835}, "улицакарламаркса", "18А");
}