Implement std::filesystem::path conversion tests.

crashfix_debugdraw
Project579 3 years ago
parent a13709c510
commit 928b131564

@ -75,6 +75,7 @@ file(GLOB UNITTEST_SRC_FILES
esmloader/record.cpp
files/hash.cpp
files/conversion_tests.cpp
toutf8/toutf8.cpp

@ -0,0 +1,27 @@
#include <components/files/conversion.hpp>
#include <components/misc/stringops.hpp>
#include <gtest/gtest.h>
#include <array>
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);
}
}
Loading…
Cancel
Save