diff options
| -rw-r--r-- | CMakeLists.txt | 4 | ||||
| -rw-r--r-- | src/tests/effect_test_helpers.cc | 4 | ||||
| -rw-r--r-- | src/tests/offscreen_render_target.cc | 4 | ||||
| -rw-r--r-- | src/tests/test_demo_effects.cc | 4 | ||||
| -rw-r--r-- | src/tests/test_post_process_helper.cc | 4 | ||||
| -rw-r--r-- | src/tests/test_texture_manager.cc | 4 | ||||
| -rw-r--r-- | src/tests/test_tracker.cc | 25 | ||||
| -rw-r--r-- | src/tests/webgpu_test_fixture.cc | 4 |
8 files changed, 17 insertions, 36 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 0a0b8ad..a02f256 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -472,9 +472,9 @@ if(DEMO_BUILD_TESTS) target_link_libraries(test_variable_tempo PRIVATE audio util procedural ${DEMO_LIBS}) add_dependencies(test_variable_tempo generate_demo_assets generate_tracker_music) - add_demo_test(test_tracker TrackerSystemTest src/tests/test_tracker.cc ${GEN_DEMO_CC} ${GENERATED_MUSIC_DATA_CC}) + add_demo_test(test_tracker TrackerSystemTest src/tests/test_tracker.cc ${GEN_DEMO_CC} ${GENERATED_TEST_DEMO_MUSIC_CC}) target_link_libraries(test_tracker PRIVATE audio util procedural ${DEMO_LIBS}) - add_dependencies(test_tracker generate_demo_assets generate_tracker_music) + add_dependencies(test_tracker generate_demo_assets generate_test_demo_music) add_demo_test(test_audio_engine AudioEngineTest src/tests/test_audio_engine.cc ${GEN_DEMO_CC} ${GENERATED_MUSIC_DATA_CC}) target_link_libraries(test_audio_engine PRIVATE audio util procedural ${DEMO_LIBS}) diff --git a/src/tests/effect_test_helpers.cc b/src/tests/effect_test_helpers.cc index 8183362..9250366 100644 --- a/src/tests/effect_test_helpers.cc +++ b/src/tests/effect_test_helpers.cc @@ -2,8 +2,6 @@ // It implements reusable test helpers for GPU effect testing. // Provides pixel validation and lifecycle testing utilities. -#if !defined(STRIP_ALL) // Test code only - zero size impact on final binary - #include "effect_test_helpers.h" #include "gpu/effect.h" #include <cassert> @@ -110,5 +108,3 @@ bool test_effect_render_smoke(Effect* effect) { return true; // Smoke test passed (no crash) } - -#endif /* !defined(STRIP_ALL) */ diff --git a/src/tests/offscreen_render_target.cc b/src/tests/offscreen_render_target.cc index 36b7b26..f4c6b75 100644 --- a/src/tests/offscreen_render_target.cc +++ b/src/tests/offscreen_render_target.cc @@ -2,8 +2,6 @@ // It implements offscreen rendering for headless GPU testing. // Provides pixel readback for validation. -#if !defined(STRIP_ALL) // Test code only - zero size impact on final binary - #include "offscreen_render_target.h" #include <cassert> #include <cstdio> @@ -162,5 +160,3 @@ std::vector<uint8_t> OffscreenRenderTarget::read_pixels() { return pixels; } - -#endif /* !defined(STRIP_ALL) */ diff --git a/src/tests/test_demo_effects.cc b/src/tests/test_demo_effects.cc index 3c40bc5..a5500a8 100644 --- a/src/tests/test_demo_effects.cc +++ b/src/tests/test_demo_effects.cc @@ -11,8 +11,6 @@ // 4. If the effect requires Renderer3D, add it to requires_3d check in // test_scene_effects() -#if !defined(STRIP_ALL) // Test code only - zero size impact on final binary - // Expected effect counts - UPDATE THESE when adding new effects! static constexpr int EXPECTED_POST_PROCESS_COUNT = 8; // FlashEffect, PassthroughEffect, GaussianBlurEffect, @@ -235,5 +233,3 @@ int main() { fprintf(stdout, "=== All Demo Effects Tests Passed ===\n"); return 0; } - -#endif /* !defined(STRIP_ALL) */ diff --git a/src/tests/test_post_process_helper.cc b/src/tests/test_post_process_helper.cc index c009bc2..7078c6e 100644 --- a/src/tests/test_post_process_helper.cc +++ b/src/tests/test_post_process_helper.cc @@ -2,8 +2,6 @@ // It tests post-processing helper functions (pipeline and bind group creation). // Validates that helpers can create valid WebGPU resources. -#if !defined(STRIP_ALL) // Test code only - zero size impact on final binary - #include "gpu/demo_effects.h" #include "gpu/gpu.h" #include "offscreen_render_target.h" @@ -287,5 +285,3 @@ int main() { fprintf(stdout, "=== All Post-Process Helper Tests Passed ===\n"); return 0; } - -#endif /* !defined(STRIP_ALL) */ diff --git a/src/tests/test_texture_manager.cc b/src/tests/test_texture_manager.cc index 41d6919..c25c07c 100644 --- a/src/tests/test_texture_manager.cc +++ b/src/tests/test_texture_manager.cc @@ -2,8 +2,6 @@ // It tests the TextureManager for procedural texture generation and management. // Tests all public methods with both success and failure cases. -#if !defined(STRIP_ALL) // Test code only - zero size impact on final binary - #include "gpu/texture_manager.h" #include "procedural/generator.h" #include "webgpu_test_fixture.h" @@ -257,5 +255,3 @@ int main() { fprintf(stdout, "=== All TextureManager Tests Passed ===\n"); return 0; } - -#endif /* !defined(STRIP_ALL) */ diff --git a/src/tests/test_tracker.cc b/src/tests/test_tracker.cc index ae06c5e..8265903 100644 --- a/src/tests/test_tracker.cc +++ b/src/tests/test_tracker.cc @@ -34,21 +34,26 @@ void test_tracker_pattern_triggering() { // With event-based triggering, only events at beat 0.0 trigger immediately. // Test 1: At music_time = 0.0f, events at beat 0.0 trigger + // drums_basic: + // 0.00, ASSET_KICK_1 + // 0.00, NOTE_A4 engine.update(0.0f); - // Expect 3 voices: crash (beat 0.0), kick (beat 0.0), hihat (beat 0.0) - assert(engine.get_active_voice_count() == 3); + // Expect 2 voices: kick + note + assert(engine.get_active_voice_count() == 2); - // Test 2: At music_time = 0.25f (beat 0.5 @ 120 BPM), hihat event triggers - // beat_duration = 60.0f / 120.0f = 0.5s per beat - // beat 0.5 = 0.25s + // Test 2: At music_time = 0.25f (beat 0.5 @ 120 BPM), snare event triggers + // 0.25, ASSET_SNARE_1 engine.update(0.25f); - // Expect 4 voices (3 previous + 1 hihat at beat 0.5) - assert(engine.get_active_voice_count() == 4); + // Expect at least 2 voices (snare + maybe others) + // Exact count depends on sample duration (kick/note might have finished) + int voices = engine.get_active_voice_count(); + assert(voices >= 2); - // Test 3: At music_time = 0.5f (beat 1.0), hihat event triggers + // Test 3: At music_time = 0.5f (beat 1.0), kick event triggers + // 0.50, ASSET_KICK_1 engine.update(0.5f); - // Expect 5 voices (4 previous + 1 hihat at beat 1.0) - assert(engine.get_active_voice_count() == 5); + // Expect at least 3 voices (new kick + others) + assert(engine.get_active_voice_count() >= 3); // Test 4: Advance to 2.0f - new patterns trigger at time 2.0f engine.update(2.0f); diff --git a/src/tests/webgpu_test_fixture.cc b/src/tests/webgpu_test_fixture.cc index 980572a..afb7ce3 100644 --- a/src/tests/webgpu_test_fixture.cc +++ b/src/tests/webgpu_test_fixture.cc @@ -2,8 +2,6 @@ // It implements shared WebGPU initialization for GPU tests. // Provides graceful fallback if GPU unavailable. -#if !defined(STRIP_ALL) // Test code only - zero size impact on final binary - #include "webgpu_test_fixture.h" #include <cstdio> #include <cstdlib> @@ -141,5 +139,3 @@ void WebGPUTestFixture::shutdown() { instance_ = nullptr; } } - -#endif /* !defined(STRIP_ALL) */ |
