58 lines
2.2 KiB
C++
58 lines
2.2 KiB
C++
#include "testing/testing.hpp"
|
||
|
||
#include "indexer/road_shields_parser.hpp"
|
||
|
||
UNIT_TEST(RoadShields_Smoke)
|
||
{
|
||
using namespace ftypes;
|
||
|
||
auto shields = GetRoadShields("France", "D 116A");
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Orange, ());
|
||
|
||
shields = GetRoadShields("Belarus", "M1"); // latin letter M
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Red, ());
|
||
|
||
shields = GetRoadShields("Belarus", "Е2"); // cyrillic letter Е
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Green, ());
|
||
|
||
shields = GetRoadShields("Ukraine", "Р50"); // cyrillic letter Р
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Blue, ());
|
||
|
||
shields = GetRoadShields("Malaysia", "AH7");
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Blue, ());
|
||
|
||
shields = GetRoadShields("Germany", "A 3;A 7");
|
||
TEST_EQUAL(shields.size(), 2, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Blue, ());
|
||
TEST_EQUAL(shields[1].m_type, RoadShieldType::Generic_Blue, ());
|
||
|
||
shields = GetRoadShields("Germany", "blue/A 31;national/B 2R");
|
||
TEST_EQUAL(shields.size(), 2, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Blue, ());
|
||
TEST_EQUAL(shields[1].m_type, RoadShieldType::Generic_Orange, ());
|
||
|
||
shields = GetRoadShields("Germany", "TMC 33388 (St 2047)");
|
||
TEST_EQUAL(shields.size(), 0, ());
|
||
|
||
shields = GetRoadShields("US", "US:IN");
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Default, ());
|
||
|
||
shields = GetRoadShields("US", "SR 38;US:IN");
|
||
TEST_EQUAL(shields.size(), 2, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_White, ());
|
||
TEST_EQUAL(shields[1].m_type, RoadShieldType::Default, ());
|
||
|
||
shields = GetRoadShields("Switzerland", "e-road/E 67");
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Green, ());
|
||
|
||
shields = GetRoadShields("Estonia", "ee:national/27;ee:local/7841171");
|
||
TEST_EQUAL(shields.size(), 1, ());
|
||
TEST_EQUAL(shields[0].m_type, RoadShieldType::Generic_Orange, ());
|
||
}
|