summaryrefslogtreecommitdiff
path: root/src/tests/common/audio_test_fixture.cc
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-14 02:39:49 +0100
committerskal <pascal.massimino@gmail.com>2026-02-14 02:39:49 +0100
commit8dd77545b5ec2f45ce46b98dd7d94a3c4a13e290 (patch)
treea338b9c1356da64a609621155c81d8d96f7ca7fe /src/tests/common/audio_test_fixture.cc
parentc007d7fa6ddb1936108aeca156b2a4bda425ca84 (diff)
Factor common test patterns into reusable utilitiesHEADmain
Refactor duplicated test setup/teardown code into shared fixtures: - test_math_helpers.h: Float comparison (test_near, test_near_vec3) - AudioTestFixture: RAII wrapper for AudioEngine lifecycle - EffectTestFixture: Combined WebGPU + AudioEngine + MainSequence Migrated 9 test files (3 math, 6 audio) to use fixtures. Net reduction: 54 LOC (178 insertions, 232 deletions). All 34 tests passing. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'src/tests/common/audio_test_fixture.cc')
-rw-r--r--src/tests/common/audio_test_fixture.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/tests/common/audio_test_fixture.cc b/src/tests/common/audio_test_fixture.cc
new file mode 100644
index 0000000..42bf27f
--- /dev/null
+++ b/src/tests/common/audio_test_fixture.cc
@@ -0,0 +1,19 @@
+// audio_test_fixture.cc - RAII wrapper for AudioEngine lifecycle
+// Simplifies audio test setup and teardown
+
+#include "audio_test_fixture.h"
+
+AudioTestFixture::AudioTestFixture() {
+ m_engine.init();
+}
+
+AudioTestFixture::~AudioTestFixture() {
+ m_engine.shutdown();
+}
+
+void AudioTestFixture::load_music(const TrackerScore* score,
+ const NoteParams* samples,
+ const AssetId* assets,
+ uint32_t count) {
+ m_engine.load_music_data(score, samples, assets, count);
+}