summaryrefslogtreecommitdiff
path: root/src/tests/common/effect_test_fixture.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tests/common/effect_test_fixture.h')
-rw-r--r--src/tests/common/effect_test_fixture.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/tests/common/effect_test_fixture.h b/src/tests/common/effect_test_fixture.h
new file mode 100644
index 0000000..399b5ed
--- /dev/null
+++ b/src/tests/common/effect_test_fixture.h
@@ -0,0 +1,28 @@
+// effect_test_fixture.h - Combined WebGPU + AudioEngine + MainSequence fixture
+// Simplifies GPU effect test setup
+
+#pragma once
+#include "webgpu_test_fixture.h"
+#include "audio_test_fixture.h"
+#include "gpu/sequence.h"
+
+// Combined WebGPU + AudioEngine + MainSequence fixture
+class EffectTestFixture {
+public:
+ EffectTestFixture();
+ ~EffectTestFixture();
+
+ // Returns false if GPU unavailable (test should skip)
+ bool init();
+
+ // Accessors
+ GpuContext ctx() const { return m_gpu.ctx(); }
+ MainSequence& sequence() { return m_sequence; }
+ AudioEngine& audio() { return m_audio.engine(); }
+
+private:
+ WebGPUTestFixture m_gpu;
+ AudioTestFixture m_audio;
+ MainSequence m_sequence;
+ bool m_initialized = false;
+};