diff options
author | Lev Dragunov <l.dragunov@corp.mail.ru> | 2016-02-03 16:02:25 +0300 |
---|---|---|
committer | Sergey Yershov <yershov@corp.mail.ru> | 2016-03-23 16:17:05 +0300 |
commit | 16ee27b0a25a9c35071c02413bf5ad65727f27c2 (patch) | |
tree | 9f8270d328e96d03ba4e0a7e997f49b51e0bed70 | |
parent | ecb8d9705d1b90f3dce219b0e34c6c7939319729 (diff) |
Capital parser test and fix.
-rw-r--r-- | generator/generator_tests/tag_admixer_test.cpp | 15 | ||||
-rw-r--r-- | generator/tag_admixer.hpp | 4 |
2 files changed, 16 insertions, 3 deletions
diff --git a/generator/generator_tests/tag_admixer_test.cpp b/generator/generator_tests/tag_admixer_test.cpp index 46ab43a827..92317629cc 100644 --- a/generator/generator_tests/tag_admixer_test.cpp +++ b/generator/generator_tests/tag_admixer_test.cpp @@ -3,9 +3,10 @@ #include "generator/tag_admixer.hpp" #include "std/map.hpp" +#include "std/set.hpp" #include "std/sstream.hpp" -UNIT_TEST(ParserTests) +UNIT_TEST(WaysParserTests) { map<uint64_t, string> ways; WaysParserHelper parser(ways); @@ -19,3 +20,15 @@ UNIT_TEST(ParserTests) TEST_EQUAL(ways[294584441], string("world_level"), ()); TEST(ways.find(140247101) == ways.end(), ()); } + +UNIT_TEST(CapitalsParserTests) +{ + set<uint64_t> capitals; + CapitalsParserHelper parser(capitals); + istringstream stream("-21.1343401;-175.201808;1082208696;t\n-16.6934156;-179.87995;242715809;f\n19.0534159;169.919199;448768937;t"); + parser.ParseStream(stream); + TEST(capitals.find(1082208696) != capitals.end(), ()); + TEST(capitals.find(242715809) != capitals.end(), ()); + TEST(capitals.find(448768937) != capitals.end(), ()); + TEST(capitals.find(140247101) == capitals.end(), ()); +} diff --git a/generator/tag_admixer.hpp b/generator/tag_admixer.hpp index 30f4ece48d..a94c1fe578 100644 --- a/generator/tag_admixer.hpp +++ b/generator/tag_admixer.hpp @@ -64,7 +64,7 @@ public: auto endPos = oneLine.find(";", pos + 1); if (endPos == string::npos) endPos = oneLine.length() - 1; - if (strings::to_uint64(oneLine.substr(pos + 1, endPos - pos), nodeId)) + if (strings::to_uint64(oneLine.substr(pos + 1, endPos - pos - 1), nodeId)) m_capitals.insert(nodeId); } } @@ -72,7 +72,7 @@ public: } private: - set<uint64_t> m_capitals; + set<uint64_t> & m_capitals; }; class TagAdmixer |