You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openmw/apps/components_tests/files/conversion_tests.cpp

26 lines
975 B
C++

#include <components/files/conversion.hpp>
#include <components/misc/strings/conversion.hpp>
#include <gtest/gtest.h>
namespace
{
using namespace testing;
using namespace Files;
constexpr auto test_path_u8 = u8"./tmp/ÒĎƎɠˠΏЌԹעڨ/ऊঋਐઊଊ/ஐఋಋഊ/ฎນ༈ႩᄇḮὯ⁂₁₩ℒ/Ⅷ↝∑/☝✌〥ぐズ㌎丕.갔3갛";
constexpr auto test_path = "./tmp/ÒĎƎɠˠΏЌԹעڨ/ऊঋਐઊଊ/ஐఋಋഊ/ฎນ༈ႩᄇḮὯ⁂₁₩ℒ/Ⅷ↝∑/☝✌〥ぐズ㌎丕.갔3갛";
TEST(OpenMWConversion, should_support_unicode_string_to_path)
{
auto p = Files::pathFromUnicodeString(test_path);
EXPECT_EQ(Misc::StringUtils::u8StringToString(p.u8string()), Misc::StringUtils::u8StringToString(test_path_u8));
}
TEST(OpenMWConversion, should_support_path_to_unicode_string)
{
std::filesystem::path p{ test_path_u8 };
EXPECT_EQ(Files::pathToUnicodeString(p), test_path);
}
}