diff options
author | vng <viktor.govako@gmail.com> | 2014-08-19 17:41:34 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 02:25:10 +0300 |
commit | 1c4c8f43de60997972521bf575b541f0f2015eea (patch) | |
tree | c101f0280995abc12c87223f71432426accfb301 /generator/generator_tests/osm_type_test.cpp | |
parent | e64a9820659eec1249bc73648c0dfe0610217d81 (diff) |
[classificator] Process synonym tags for needed types (atm=yes).
Diffstat (limited to 'generator/generator_tests/osm_type_test.cpp')
-rw-r--r-- | generator/generator_tests/osm_type_test.cpp | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/generator/generator_tests/osm_type_test.cpp b/generator/generator_tests/osm_type_test.cpp index 02aed9cf9b..8087424a8f 100644 --- a/generator/generator_tests/osm_type_test.cpp +++ b/generator/generator_tests/osm_type_test.cpp @@ -236,3 +236,66 @@ UNIT_TEST(OsmType_AlabamaRiver) TEST(params.IsTypeExist(GetType(arrT)), ()); TEST_EQUAL(params.m_Types.size(), 1, ()); } + +UNIT_TEST(OsmType_Synonims) +{ + // Smoke test. + { + char const * arr[][2] = { + { "building", "yes" }, + { "shop", "yes" }, + { "atm", "yes" } + }; + + XMLElement e; + FillXmlElement(arr, ARRAY_SIZE(arr), &e); + + FeatureParams params; + ftype::GetNameAndType(&e, params); + + char const * arrT1[] = { "building" }; + char const * arrT2[] = { "amenity", "atm" }; + char const * arrT3[] = { "shop" }; + TEST_EQUAL(params.m_Types.size(), 3, ()); + TEST(params.IsTypeExist(GetType(arrT1)), ()); + TEST(params.IsTypeExist(GetType(arrT2)), ()); + TEST(params.IsTypeExist(GetType(arrT3)), ()); + } + + // Duplicating test. + { + char const * arr[][2] = { + { "amenity", "atm" }, + { "atm", "yes" } + }; + + XMLElement e; + FillXmlElement(arr, ARRAY_SIZE(arr), &e); + + FeatureParams params; + ftype::GetNameAndType(&e, params); + + char const * arrT[] = { "amenity", "atm" }; + TEST_EQUAL(params.m_Types.size(), 1, ()); + TEST(params.IsTypeExist(GetType(arrT)), ()); + } + + // "NO" tag test. + { + char const * arr[][2] = { + { "building", "yes" }, + { "shop", "no" }, + { "atm", "no" } + }; + + XMLElement e; + FillXmlElement(arr, ARRAY_SIZE(arr), &e); + + FeatureParams params; + ftype::GetNameAndType(&e, params); + + char const * arrT[] = { "building" }; + TEST_EQUAL(params.m_Types.size(), 1, ()); + TEST(params.IsTypeExist(GetType(arrT)), ()); + } +} |