diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index b9fd44d..bf5991a 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -9,8 +9,8 @@ function(regression_test testname) 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) + set (rawinput ${CMAKE_CURRENT_SOURCE_DIR}/expected_output/${testname}.raw) + set (rawoutput ${CMAKE_CURRENT_BINARY_DIR}/expected_output/${testname}.raw) add_custom_target(${testname}_rawcopy COMMAND ${CMAKE_COMMAND} -E copy_if_different ${rawinput} ${rawoutput} diff --git a/tests/test_envelope_expected.raw b/tests/expected_output/test_envelope.raw similarity index 100% rename from tests/test_envelope_expected.raw rename to tests/expected_output/test_envelope.raw diff --git a/tests/test_envelope_16bit_expected.raw b/tests/expected_output/test_envelope_16bit.raw similarity index 100% rename from tests/test_envelope_16bit_expected.raw rename to tests/expected_output/test_envelope_16bit.raw diff --git a/tests/test_envelope_modulation_expected.raw b/tests/expected_output/test_envelope_modulation.raw similarity index 100% rename from tests/test_envelope_modulation_expected.raw rename to tests/expected_output/test_envelope_modulation.raw diff --git a/tests/test_fop_add_expected.raw b/tests/expected_output/test_fop_add.raw similarity index 100% rename from tests/test_fop_add_expected.raw rename to tests/expected_output/test_fop_add.raw diff --git a/tests/test_fop_addp2_expected.raw b/tests/expected_output/test_fop_addp.raw similarity index 100% rename from tests/test_fop_addp2_expected.raw rename to tests/expected_output/test_fop_addp.raw diff --git a/tests/test_fop_addp_expected.raw b/tests/expected_output/test_fop_addp2.raw similarity index 100% rename from tests/test_fop_addp_expected.raw rename to tests/expected_output/test_fop_addp2.raw diff --git a/tests/test_fop_loadnote_expected.raw b/tests/expected_output/test_fop_loadnote.raw similarity index 100% rename from tests/test_fop_loadnote_expected.raw rename to tests/expected_output/test_fop_loadnote.raw diff --git a/tests/test_fop_mul_expected.raw b/tests/expected_output/test_fop_mul.raw similarity index 100% rename from tests/test_fop_mul_expected.raw rename to tests/expected_output/test_fop_mul.raw diff --git a/tests/test_fop_mulp2_expected.raw b/tests/expected_output/test_fop_mulp.raw similarity index 100% rename from tests/test_fop_mulp2_expected.raw rename to tests/expected_output/test_fop_mulp.raw diff --git a/tests/test_fop_mulp_expected.raw b/tests/expected_output/test_fop_mulp2.raw similarity index 100% rename from tests/test_fop_mulp_expected.raw rename to tests/expected_output/test_fop_mulp2.raw diff --git a/tests/test_fop_pop_expected.raw b/tests/expected_output/test_fop_pop.raw similarity index 100% rename from tests/test_fop_pop_expected.raw rename to tests/expected_output/test_fop_pop.raw diff --git a/tests/test_fop_push_expected.raw b/tests/expected_output/test_fop_push.raw similarity index 100% rename from tests/test_fop_push_expected.raw rename to tests/expected_output/test_fop_push.raw diff --git a/tests/test_fop_xch_expected.raw b/tests/expected_output/test_fop_xch.raw similarity index 100% rename from tests/test_fop_xch_expected.raw rename to tests/expected_output/test_fop_xch.raw diff --git a/tests/test_globalstore_expected.raw b/tests/expected_output/test_globalstore.raw similarity index 100% rename from tests/test_globalstore_expected.raw rename to tests/expected_output/test_globalstore.raw diff --git a/tests/test_load_expected.raw b/tests/expected_output/test_load.raw similarity index 100% rename from tests/test_load_expected.raw rename to tests/expected_output/test_load.raw diff --git a/tests/test_multiple_instruments_expected.raw b/tests/expected_output/test_multiple_instruments.raw similarity index 100% rename from tests/test_multiple_instruments_expected.raw rename to tests/expected_output/test_multiple_instruments.raw diff --git a/tests/test_panning_expected.raw b/tests/expected_output/test_panning.raw similarity index 100% rename from tests/test_panning_expected.raw rename to tests/expected_output/test_panning.raw diff --git a/tests/test_store_expected.raw b/tests/expected_output/test_store.raw similarity index 100% rename from tests/test_store_expected.raw rename to tests/expected_output/test_store.raw diff --git a/tests/test_vco_cm_modulation_expected.raw b/tests/expected_output/test_vco_cm_modulation.raw similarity index 100% rename from tests/test_vco_cm_modulation_expected.raw rename to tests/expected_output/test_vco_cm_modulation.raw diff --git a/tests/test_vco_dm_modulation_expected.raw b/tests/expected_output/test_vco_dm_modulation.raw similarity index 100% rename from tests/test_vco_dm_modulation_expected.raw rename to tests/expected_output/test_vco_dm_modulation.raw diff --git a/tests/test_vco_fm_modulation_expected.raw b/tests/expected_output/test_vco_fm_modulation.raw similarity index 100% rename from tests/test_vco_fm_modulation_expected.raw rename to tests/expected_output/test_vco_fm_modulation.raw diff --git a/tests/test_vco_gate_expected.raw b/tests/expected_output/test_vco_gate.raw similarity index 100% rename from tests/test_vco_gate_expected.raw rename to tests/expected_output/test_vco_gate.raw diff --git a/tests/test_vco_gm_modulation_expected.raw b/tests/expected_output/test_vco_gm_modulation.raw similarity index 100% rename from tests/test_vco_gm_modulation_expected.raw rename to tests/expected_output/test_vco_gm_modulation.raw diff --git a/tests/test_vco_lfo_expected.raw b/tests/expected_output/test_vco_lfo.raw similarity index 100% rename from tests/test_vco_lfo_expected.raw rename to tests/expected_output/test_vco_lfo.raw diff --git a/tests/test_vco_noise_expected.raw b/tests/expected_output/test_vco_noise.raw similarity index 100% rename from tests/test_vco_noise_expected.raw rename to tests/expected_output/test_vco_noise.raw diff --git a/tests/test_vco_pm_modulation_expected.raw b/tests/expected_output/test_vco_pm_modulation.raw similarity index 100% rename from tests/test_vco_pm_modulation_expected.raw rename to tests/expected_output/test_vco_pm_modulation.raw diff --git a/tests/test_vco_pulse_expected.raw b/tests/expected_output/test_vco_pulse.raw similarity index 100% rename from tests/test_vco_pulse_expected.raw rename to tests/expected_output/test_vco_pulse.raw diff --git a/tests/test_vco_sine_expected.raw b/tests/expected_output/test_vco_sine.raw similarity index 100% rename from tests/test_vco_sine_expected.raw rename to tests/expected_output/test_vco_sine.raw diff --git a/tests/test_vco_sm_modulation_expected.raw b/tests/expected_output/test_vco_sm_modulation.raw similarity index 100% rename from tests/test_vco_sm_modulation_expected.raw rename to tests/expected_output/test_vco_sm_modulation.raw diff --git a/tests/test_vco_stereo_expected.raw b/tests/expected_output/test_vco_stereo.raw similarity index 100% rename from tests/test_vco_stereo_expected.raw rename to tests/expected_output/test_vco_stereo.raw diff --git a/tests/test_vco_tm_modulation_expected.raw b/tests/expected_output/test_vco_tm_modulation.raw similarity index 100% rename from tests/test_vco_tm_modulation_expected.raw rename to tests/expected_output/test_vco_tm_modulation.raw diff --git a/tests/test_vco_trisaw_expected.raw b/tests/expected_output/test_vco_trisaw.raw similarity index 100% rename from tests/test_vco_trisaw_expected.raw rename to tests/expected_output/test_vco_trisaw.raw diff --git a/tests/test_renderer.c b/tests/test_renderer.c index ea477e2..bc7ffd0 100644 --- a/tests/test_renderer.c +++ b/tests/test_renderer.c @@ -1,5 +1,16 @@ #include #include +#include +#include + +#if defined (_WIN32) +#include +#else +#include +#include +#endif + + extern void __stdcall _4klang_render(); extern int test_max_samples; @@ -10,6 +21,8 @@ int main(int argc, char* argv[]) { int n; int retval; char test_name[] = TEST_NAME; + char expected_output_folder[] = "expected_output/"; + char actual_output_folder[] = "actual_output/"; long fsize; long bufsize; #ifndef GO4K_USE_16BIT_OUTPUT @@ -33,7 +46,7 @@ int main(int argc, char* argv[]) { _4klang_render(buf); - snprintf(filename, sizeof filename, "%s%s", test_name, "_expected.raw"); + snprintf(filename, sizeof filename, "%s%s%s", expected_output_folder, test_name, ".raw"); f = fopen(filename, "rb"); @@ -87,8 +100,14 @@ end: fclose(f); f = 0; } + +#if defined (_WIN32) + CreateDirectory(actual_output_folder, NULL); +#else + mkdir(actual_output_folder, 0777); +#endif - snprintf(filename, sizeof filename, "%s%s", test_name, "_got.raw"); + snprintf(filename, sizeof filename, "%s%s%s", actual_output_folder, test_name, ".raw"); f = fopen(filename, "wb"); fwrite((void*)buf, sizeof(*buf), 2 * test_max_samples, f); fclose(f);