mirror of
https://codeberg.org/comaps/comaps
synced 2025-12-25 07:13:53 +00:00
@@ -7,15 +7,18 @@
|
||||
|
||||
using namespace editor;
|
||||
|
||||
UNIT_TEST(testIfTestRuns)
|
||||
UNIT_TEST(loadConfigFile)
|
||||
{
|
||||
LOG(LINFO, ("Hello from type to osm test!"));
|
||||
TypeToOSMTranslator typeToOsm;
|
||||
typeToOsm.loadConfigFile();
|
||||
}
|
||||
|
||||
UNIT_TEST(osmTagsFromType)
|
||||
{
|
||||
classificator::Load();
|
||||
|
||||
TypeToOSMTranslator typeToOsm;
|
||||
uint32_t type = classif().GetTypeByReadableObjectName("amenity-restaurant");
|
||||
std::vector<OSMTag> resultVector = typeToOsm.osmTagsFromType(type);
|
||||
std::vector<OSMTag> resultVector = getOSMTranslator().osmTagsFromType(type);
|
||||
|
||||
TEST_EQUAL(resultVector.size(), 1, ());
|
||||
OSMTag const & result = resultVector.front();
|
||||
@@ -23,8 +26,7 @@ UNIT_TEST(testIfTestRuns)
|
||||
TEST_EQUAL(result.value, "restaurant", ());
|
||||
}
|
||||
|
||||
UNIT_TEST(loadConfigFile)
|
||||
UNIT_TEST(testToFail)
|
||||
{
|
||||
TypeToOSMTranslator typeToOsm;
|
||||
typeToOsm.loadConfigFile();
|
||||
ASSERT_FAIL("Don't run further tests-------------------");
|
||||
}
|
||||
|
||||
@@ -89,23 +89,25 @@ namespace editor
|
||||
}
|
||||
|
||||
|
||||
if (lineNumber > 70)
|
||||
if (lineNumber > 500)
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
ASSERT_FAIL("Don't run further tests-------------------");
|
||||
}
|
||||
|
||||
std::vector<OSMTag> TypeToOSMTranslator::osmTagsFromType(uint32_t type)
|
||||
{
|
||||
LOG(LINFO, ("Computing osmTagsFromType for Type: ", type, "/ " , classif().GetReadableObjectName(type)));
|
||||
|
||||
std::vector<OSMTag> result;
|
||||
auto it = m_storage.find(type);
|
||||
|
||||
result.push_back(OSMTag{"amenity", "restaurant"});
|
||||
if (it == m_storage.end())
|
||||
{
|
||||
ASSERT(false, ("OSM tags for type", type, "could not be found"));
|
||||
return {};
|
||||
}
|
||||
|
||||
return result;
|
||||
return it->second;
|
||||
}
|
||||
|
||||
TypeToOSMTranslator & getOSMTranslator()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#include "editor/xml_feature.hpp"
|
||||
|
||||
//#include "editor/feature_type_to_osm.hpp"
|
||||
#include "editor/feature_type_to_osm.hpp"
|
||||
#include "editor/keys_to_remove.hpp"
|
||||
|
||||
#include "indexer/classificator.hpp"
|
||||
@@ -642,6 +642,14 @@ void XMLFeature::RemoveTag(string_view key)
|
||||
|
||||
void XMLFeature::SetOSMTagsForType(uint32_t type)
|
||||
{
|
||||
TypeToOSMTranslator translator = getOSMTranslator();
|
||||
|
||||
auto result = translator.osmTagsFromType(type);
|
||||
|
||||
ASSERT(!result.empty(), ());
|
||||
ASSERT_EQUAL(result[0].key, "amenity", ());
|
||||
ASSERT_EQUAL(result[0].value, "restaurant", ());
|
||||
|
||||
if (ftypes::IsRecyclingCentreChecker::Instance()(type))
|
||||
{
|
||||
SetTagValue("amenity", "recycling");
|
||||
|
||||
Reference in New Issue
Block a user