New cpp folder structure

Signed-off-by: Alexander Borsuk <me@alex.bio>
This commit is contained in:
Alexander Borsuk
2025-07-17 22:35:52 +03:00
committed by Konstantin Pastbin
parent c9cbb64f12
commit 76ffc99abd
2390 changed files with 345 additions and 339 deletions

View File

@@ -0,0 +1,28 @@
#include "testing/testing.hpp"
#include "drape/harfbuzz_shaping.hpp"
namespace harfbuzz_shaping
{
bool operator==(TextSegment const & s1, TextSegment const & s2)
{
return s1.m_start == s2.m_start && s1.m_length == s2.m_length
&& s1.m_script == s2.m_script && s1.m_direction == s2.m_direction;
}
UNIT_TEST(GetTextSegments)
{
auto const [text, segments] = GetTextSegments("Map data © OpenStreetMap");
TEST(text == u"Map data © OpenStreetMap", ());
std::vector<TextSegment> const expected {
{0, 3, HB_SCRIPT_LATIN, HB_DIRECTION_LTR},
{3, 1, HB_SCRIPT_COMMON, HB_DIRECTION_LTR},
{4, 4, HB_SCRIPT_LATIN, HB_DIRECTION_LTR},
{8, 3, HB_SCRIPT_COMMON, HB_DIRECTION_LTR},
{11, 13, HB_SCRIPT_LATIN, HB_DIRECTION_LTR},
};
TEST_EQUAL(segments, expected, ());
}
} // namespace harfbuzz_shaping