diff --git a/test/Audio/InputSoundFile.test.cpp b/test/Audio/InputSoundFile.test.cpp index f13c8d986..04ad3f2ad 100644 --- a/test/Audio/InputSoundFile.test.cpp +++ b/test/Audio/InputSoundFile.test.cpp @@ -6,10 +6,10 @@ #include #include +#include #include #include -#include #include TEST_CASE("[Audio] sf::InputSoundFile") @@ -162,23 +162,14 @@ TEST_CASE("[Audio] sf::InputSoundFile") SECTION("Valid file") { + const std::u32string filenameSuffix = GENERATE(U"", U"-ń", U"-🐌"); + SECTION("flac") { - SECTION("ASCII filename") - { - REQUIRE(inputSoundFile.openFromFile("Audio/ding.flac")); - } - - SECTION("Polish filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/ding-ń.flac")); - } - - SECTION("Emoji filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/ding-🐌.flac")); - } + const std::filesystem::path filename = U"Audio/ding" + filenameSuffix + U".flac"; + INFO("Filename: " << reinterpret_cast(filename.u8string().c_str())); + REQUIRE(inputSoundFile.openFromFile(filename)); CHECK(inputSoundFile.getSampleCount() == 87'798); CHECK(inputSoundFile.getChannelCount() == 1); CHECK(inputSoundFile.getSampleRate() == 44'100); @@ -189,21 +180,10 @@ TEST_CASE("[Audio] sf::InputSoundFile") SECTION("mp3") { - SECTION("ASCII filename") - { - REQUIRE(inputSoundFile.openFromFile("Audio/ding.mp3")); - } - - SECTION("Polish filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/ding-ń.mp3")); - } - - SECTION("Emoji filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/ding-🐌.mp3")); - } + const std::filesystem::path filename = U"Audio/ding" + filenameSuffix + U".mp3"; + INFO("Filename: " << reinterpret_cast(filename.u8string().c_str())); + REQUIRE(inputSoundFile.openFromFile(filename)); CHECK(inputSoundFile.getSampleCount() == 87'798); CHECK(inputSoundFile.getChannelCount() == 1); CHECK(inputSoundFile.getSampleRate() == 44'100); @@ -214,21 +194,10 @@ TEST_CASE("[Audio] sf::InputSoundFile") SECTION("ogg") { - SECTION("ASCII filename") - { - REQUIRE(inputSoundFile.openFromFile("Audio/doodle_pop.ogg")); - } - - SECTION("Polish filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/doodle_pop-ń.ogg")); - } - - SECTION("Emoji filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/doodle_pop-🐌.ogg")); - } + const std::filesystem::path filename = U"Audio/doodle_pop" + filenameSuffix + U".ogg"; + INFO("Filename: " << reinterpret_cast(filename.u8string().c_str())); + REQUIRE(inputSoundFile.openFromFile(filename)); CHECK(inputSoundFile.getSampleCount() == 2'116'992); CHECK(inputSoundFile.getChannelCount() == 2); CHECK(inputSoundFile.getSampleRate() == 44'100); @@ -239,21 +208,10 @@ TEST_CASE("[Audio] sf::InputSoundFile") SECTION("wav") { - SECTION("ASCII filename") - { - REQUIRE(inputSoundFile.openFromFile("Audio/killdeer.wav")); - } - - SECTION("Polish filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/killdeer-ń.wav")); - } - - SECTION("Emoji filename") - { - REQUIRE(inputSoundFile.openFromFile(U"Audio/killdeer-🐌.wav")); - } + const std::filesystem::path filename = U"Audio/killdeer" + filenameSuffix + U".wav"; + INFO("Filename: " << reinterpret_cast(filename.u8string().c_str())); + REQUIRE(inputSoundFile.openFromFile(filename)); CHECK(inputSoundFile.getSampleCount() == 112'941); CHECK(inputSoundFile.getChannelCount() == 1); CHECK(inputSoundFile.getSampleRate() == 22'050); diff --git a/test/Audio/Music.test.cpp b/test/Audio/Music.test.cpp index ebc086958..a08c068b4 100644 --- a/test/Audio/Music.test.cpp +++ b/test/Audio/Music.test.cpp @@ -5,6 +5,7 @@ #include #include +#include #include #include @@ -133,21 +134,11 @@ TEST_CASE("[Audio] sf::Music", runAudioDeviceTests()) SECTION("Valid file") { - SECTION("ASCII filename") - { - REQUIRE(music.openFromFile("Audio/ding.mp3")); - } - - SECTION("Polish filename") - { - REQUIRE(music.openFromFile(U"Audio/ding-ń.mp3")); - } - - SECTION("Emoji filename") - { - REQUIRE(music.openFromFile(U"Audio/ding-🐌.mp3")); - } + const std::u32string filenameSuffix = GENERATE(U"", U"-ń", U"-🐌"); + const std::filesystem::path filename = U"Audio/ding" + filenameSuffix + U".mp3"; + INFO("Filename: " << reinterpret_cast(filename.u8string().c_str())); + REQUIRE(music.openFromFile(filename)); CHECK(music.getDuration() == sf::microseconds(1990884)); const auto [offset, length] = music.getLoopPoints(); CHECK(offset == sf::Time::Zero); diff --git a/test/Audio/SoundBuffer.test.cpp b/test/Audio/SoundBuffer.test.cpp index f0db1c376..2a842ba68 100644 --- a/test/Audio/SoundBuffer.test.cpp +++ b/test/Audio/SoundBuffer.test.cpp @@ -5,6 +5,7 @@ #include #include +#include #include #include @@ -122,21 +123,11 @@ TEST_CASE("[Audio] sf::SoundBuffer", runAudioDeviceTests()) SECTION("Valid file") { - SECTION("ASCII filename") - { - REQUIRE(soundBuffer.loadFromFile("Audio/ding.flac")); - } - - SECTION("Polish filename") - { - REQUIRE(soundBuffer.loadFromFile(U"Audio/ding-ń.flac")); - } - - SECTION("Emoji filename") - { - REQUIRE(soundBuffer.loadFromFile(U"Audio/ding-🐌.flac")); - } + const std::u32string filenameSuffix = GENERATE(U"", U"-ń", U"-🐌"); + const std::filesystem::path filename = U"Audio/ding" + filenameSuffix + U".flac"; + INFO("Filename: " << reinterpret_cast(filename.u8string().c_str())); + REQUIRE(soundBuffer.loadFromFile(filename)); CHECK(soundBuffer.getSamples() != nullptr); CHECK(soundBuffer.getSampleCount() == 87798); CHECK(soundBuffer.getSampleRate() == 44100); diff --git a/test/System/FileInputStream.test.cpp b/test/System/FileInputStream.test.cpp index 96e6c0bf7..3785aebf4 100644 --- a/test/System/FileInputStream.test.cpp +++ b/test/System/FileInputStream.test.cpp @@ -1,6 +1,7 @@ #include #include +#include #include #include @@ -93,22 +94,12 @@ TEST_CASE("[System] sf::FileInputStream") SECTION("open()") { + const std::u32string filenameSuffix = GENERATE(U"", U"-ń", U"-🐌"); + const std::filesystem::path filename = U"System/test" + filenameSuffix + U".txt"; + INFO("Filename: " << reinterpret_cast(filename.u8string().c_str())); + sf::FileInputStream fileInputStream; - - SECTION("From ASCII filename") - { - REQUIRE(fileInputStream.open("System/test.txt")); - } - - SECTION("From Polish filename") - { - REQUIRE(fileInputStream.open(U"System/test-ń.txt")); - } - - SECTION("From emoji filename") - { - REQUIRE(fileInputStream.open(U"System/test-🐌.txt")); - } + CHECK(fileInputStream.open(filename)); CHECK(fileInputStream.read(buffer.data(), 5) == 5); CHECK(fileInputStream.tell() == 5);