diff options
| author | Skye Deving <76892045+skyedeving@users.noreply.github.com> | 2021-01-05 12:15:19 -0600 |
|---|---|---|
| committer | Skye Deving <76892045+skyedeving@users.noreply.github.com> | 2021-01-28 11:05:42 -0600 |
| commit | 1fc6c855684ad6ef00f5ff3d646df043363ee100 (patch) | |
| tree | 40a2ba83e4d18a4570a394d0e9f2e06f8b30eebd /test | |
| parent | 337b056400955c9384accf4bb4f3a58a768852cf (diff) | |
Add test for streaming with BASS
Diffstat (limited to 'test')
| -rw-r--r-- | test/CMakeLists.txt | 5 | ||||
| -rw-r--r-- | test/test_bass.cpp | 28 |
2 files changed, 31 insertions, 2 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 31aab1e9..4249f1b3 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,6 +1,7 @@ find_package(Qt5 COMPONENTS Core Gui REQUIRED) find_package(Catch2 REQUIRED) -add_executable(test test_aopacket.cpp test_caseloading.cpp test_apng.cpp ../include/aopacket.h ../src/aopacket.cpp) +add_executable(test test_aopacket.cpp test_caseloading.cpp test_apng.cpp test_bass.cpp ../include/aopacket.h ../src/aopacket.cpp) target_include_directories(test PRIVATE ../include) -target_link_libraries(test PRIVATE Qt5::Core Qt5::Gui Catch2::Catch2) +target_link_directories(test PRIVATE ../lib) +target_link_libraries(test PRIVATE Qt5::Core Qt5::Gui Catch2::Catch2 bass) diff --git a/test/test_bass.cpp b/test/test_bass.cpp new file mode 100644 index 00000000..0709fb92 --- /dev/null +++ b/test/test_bass.cpp @@ -0,0 +1,28 @@ +#include <iostream> +#include <cstring> + +#include <catch2/catch.hpp> +#include <QString> + +#include "bass.h" + +TEST_CASE("BASS URL streaming", "[bass]") { + // Sample + QString url = "https://raw.githubusercontent.com/skyedeving/aocharedit/master/Attorney%20Online%20Character%20Editor/Resources/about.mp3"; + BASS_Init(-1, 44100, 0, 0, nullptr); +#ifdef _WIN32 + HSTREAM stream = BASS_StreamCreateURL(url.toWStdString().c_str(), 0, BASS_STREAM_STATUS, nullptr, 0); +#else + HSTREAM stream = BASS_StreamCreateURL(url.toStdString().c_str(), 0, BASS_STREAM_STATUS, nullptr, 0); +#endif + const char *tags = BASS_ChannelGetTags(stream, BASS_TAG_HTTP); + if (tags) { + while(*tags) { + UNSCOPED_INFO(tags); + tags += strlen(tags) + 1; + } + } + REQUIRE(stream != 0); + REQUIRE(BASS_ChannelPlay(stream, TRUE) == TRUE); + // while (BASS_ChannelIsActive(stream) != BASS_ACTIVE_STOPPED); +} |
