mirror of
https://github.com/vsariola/sointu.git
synced 2025-05-28 03:10:24 -04:00
90 lines
4.3 KiB
CMake
90 lines
4.3 KiB
CMake
function(regression_test testname)
|
|
if(${ARGC} LESS 2)
|
|
set(source ${testname})
|
|
else()
|
|
set(source ${ARGV1})
|
|
endif()
|
|
|
|
add_executable(${testname} ${source}.asm test_renderer.c)
|
|
add_test(${testname} ${testname})
|
|
target_compile_definitions(${testname} PUBLIC TEST_NAME="${testname}")
|
|
|
|
set (rawinput ${CMAKE_CURRENT_SOURCE_DIR}/${testname}_expected.raw)
|
|
set (rawoutput ${CMAKE_CURRENT_BINARY_DIR}/${testname}_expected.raw)
|
|
|
|
add_custom_target(${testname}_rawcopy
|
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${rawinput} ${rawoutput}
|
|
)
|
|
|
|
add_dependencies(${testname} ${testname}_rawcopy)
|
|
endfunction(regression_test)
|
|
|
|
regression_test(test_envelope)
|
|
regression_test(test_load)
|
|
regression_test(test_store)
|
|
regression_test(test_globalstore)
|
|
regression_test(test_panning)
|
|
regression_test(test_multiple_instruments)
|
|
regression_test(test_fop_pop)
|
|
regression_test(test_fop_addp)
|
|
regression_test(test_fop_mulp)
|
|
regression_test(test_fop_push)
|
|
regression_test(test_fop_xch)
|
|
regression_test(test_fop_add)
|
|
regression_test(test_fop_mul)
|
|
regression_test(test_fop_addp2)
|
|
regression_test(test_fop_mulp2)
|
|
regression_test(test_fop_loadnote)
|
|
regression_test(test_vco_sine)
|
|
regression_test(test_vco_trisaw)
|
|
regression_test(test_vco_noise)
|
|
regression_test(test_vco_pulse)
|
|
regression_test(test_vco_gate)
|
|
regression_test(test_vco_stereo)
|
|
regression_test(test_vco_lfo)
|
|
regression_test(test_vco_tm_modulation)
|
|
regression_test(test_vco_dm_modulation)
|
|
regression_test(test_vco_fm_modulation)
|
|
regression_test(test_vco_pm_modulation)
|
|
regression_test(test_vco_cm_modulation)
|
|
regression_test(test_vco_sm_modulation)
|
|
regression_test(test_vco_gm_modulation)
|
|
regression_test(test_envelope_16bit test_envelope)
|
|
regression_test(test_envelope_modulation)
|
|
|
|
target_compile_definitions(test_envelope_16bit PUBLIC GO4K_USE_16BIT_OUTPUT)
|
|
|
|
set_tests_properties(test_envelope PROPERTIES FIXTURES_SETUP ENVELOPE)
|
|
set_tests_properties(test_panning PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
set_tests_properties(test_multiple_instruments PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
set_tests_properties(test_vco_sine PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
set_tests_properties(test_vco_trisaw PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
set_tests_properties(test_vco_noise PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
set_tests_properties(test_vco_pulse PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
set_tests_properties(test_vco_gate PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
set_tests_properties(test_vco_stereo PROPERTIES FIXTURES_REQUIRED ENVELOPE)
|
|
|
|
set_tests_properties(test_load PROPERTIES FIXTURES_SETUP LOAD)
|
|
set_tests_properties(test_fop_pop PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_addp PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_mulp PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_push PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_xch PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_add PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_mul PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_addp2 PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
set_tests_properties(test_fop_mulp2 PROPERTIES FIXTURES_REQUIRED LOAD)
|
|
|
|
set_tests_properties(test_fop_pop PROPERTIES FIXTURES_SETUP FOP_POP)
|
|
set_tests_properties(test_fop_push PROPERTIES FIXTURES_REQUIRED FOP_POP)
|
|
|
|
set_tests_properties(test_vco_sine PROPERTIES FIXTURES_SETUP VCO_SINE)
|
|
set_tests_properties(test_fop_mulp PROPERTIES FIXTURES_SETUP FOP_MULP)
|
|
set_tests_properties(test_fop_push PROPERTIES FIXTURES_SETUP FOP_PUSH)
|
|
set_tests_properties(test_store PROPERTIES FIXTURES_SETUP STORE)
|
|
set_tests_properties(test_vco_tm_modulation PROPERTIES FIXTURES_REQUIRED "VCO_SINE;ENVELOPE;FOP_MULP;FOP_PUSH;STORE")
|
|
set_tests_properties(test_vco_dm_modulation PROPERTIES FIXTURES_REQUIRED "VCO_SINE;ENVELOPE;FOP_MULP;FOP_PUSH;STORE")
|
|
set_tests_properties(test_vco_fm_modulation PROPERTIES FIXTURES_REQUIRED "VCO_SINE;ENVELOPE;FOP_MULP;FOP_PUSH;STORE")
|
|
set_tests_properties(test_vco_pm_modulation PROPERTIES FIXTURES_REQUIRED "VCO_SINE;ENVELOPE;FOP_MULP;FOP_PUSH;STORE")
|
|
set_tests_properties(test_vco_sm_modulation PROPERTIES FIXTURES_REQUIRED "VCO_SINE;ENVELOPE;FOP_MULP;FOP_PUSH;STORE")
|
|
set_tests_properties(test_vco_gm_modulation PROPERTIES FIXTURES_REQUIRED "VCO_SINE;ENVELOPE;FOP_MULP;FOP_PUSH;STORE") |