- Timestamp:
- Nov 29, 2018, 7:19:52 PM (6 years ago)
- Branches:
- feature/autosink, feature/cnn, feature/cnn_org, feature/constantq, feature/crepe, feature/crepe_org, feature/pitchshift, feature/pydocstrings, feature/timestretch, fix/ffmpeg5, master
- Children:
- 3821415
- Parents:
- c0ce78f (diff), 2cf905f (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- tests
- Files:
-
- 1 added
- 24 edited
Legend:
- Unmodified
- Added
- Removed
-
tests/src/io/test-sink-multi.c
rc0ce78f r8968ea7 10 10 11 11 if (argc < 3) { 12 err = 2;13 PRINT_ERR("not enough arguments\n");12 PRINT_ERR("not enough arguments, running tests\n"); 13 err = run_on_default_source_and_sink(main); 14 14 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [channels] [hop_size]\n", argv[0]); 15 15 return err; -
tests/src/io/test-sink.c
rc0ce78f r8968ea7 7 7 8 8 if (argc < 3) { 9 err = 2;10 PRINT_ERR("not enough arguments\n");9 PRINT_ERR("not enough arguments, running tests\n"); 10 err = run_on_default_source_and_sink(main); 11 11 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [hop_size]\n", argv[0]); 12 12 return err; -
tests/src/io/test-sink_apple_audio-multi.c
rc0ce78f r8968ea7 11 11 12 12 if (argc < 3) { 13 err = 2;14 PRINT_ERR("not enough arguments\n");13 PRINT_ERR("not enough arguments, running tests\n"); 14 err = run_on_default_source_and_sink(main); 15 15 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [channels] [hop_size]\n", argv[0]); 16 16 return err; … … 72 72 beach_source: 73 73 #else /* HAVE_SINK_APPLE_AUDIO */ 74 err = 3;74 err = 0; 75 75 PRINT_ERR("aubio was not compiled with aubio_sink_apple_audio\n"); 76 76 #endif /* HAVE_SINK_APPLE_AUDIO */ -
tests/src/io/test-sink_apple_audio.c
rc0ce78f r8968ea7 11 11 12 12 if (argc < 3) { 13 err = 2;14 PRINT_ERR("not enough arguments\n");13 PRINT_ERR("not enough arguments, running tests\n"); 14 err = run_on_default_source_and_sink(main); 15 15 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [hop_size]\n", argv[0]); 16 16 return err; … … 61 61 beach_fvec: 62 62 #else /* HAVE_SINK_APPLE_AUDIO */ 63 err = 3;63 err = 0; 64 64 PRINT_ERR("aubio was not compiled with aubio_source_apple_audio\n"); 65 65 #endif /* HAVE_SINK_APPLE_AUDIO */ -
tests/src/io/test-sink_sndfile-multi.c
rc0ce78f r8968ea7 11 11 12 12 if (argc < 3) { 13 err = 2;14 PRINT_ERR("not enough arguments\n");13 PRINT_ERR("not enough arguments, running tests\n"); 14 err = run_on_default_source_and_sink(main); 15 15 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [channels] [hop_size]\n", argv[0]); 16 16 return err; … … 72 72 beach_source: 73 73 #else 74 err = 3;74 err = 0; 75 75 PRINT_ERR("aubio was not compiled with aubio_sink_sndfile\n"); 76 76 #endif /* HAVE_SNDFILE */ -
tests/src/io/test-sink_sndfile.c
rc0ce78f r8968ea7 11 11 12 12 if (argc < 3) { 13 err = 2;14 PRINT_ERR("not enough arguments\n");13 PRINT_ERR("not enough arguments, running tests\n"); 14 err = run_on_default_source_and_sink(main); 15 15 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [hop_size]\n", argv[0]); 16 16 return err; … … 61 61 beach_fvec: 62 62 #else 63 err = 3;63 err = 0; 64 64 PRINT_ERR("aubio was not compiled with aubio_source_sndfile\n"); 65 65 #endif /* HAVE_SNDFILE */ -
tests/src/io/test-sink_wavwrite-multi.c
rc0ce78f r8968ea7 11 11 12 12 if (argc < 3) { 13 err = 2;14 PRINT_ERR("not enough arguments\n");13 PRINT_ERR("not enough arguments, running tests\n"); 14 err = run_on_default_source_and_sink(main); 15 15 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [channels] [hop_size]\n", argv[0]); 16 16 return err; … … 72 72 beach_source: 73 73 #else 74 err = 3;74 err = 0; 75 75 PRINT_ERR("aubio was not compiled with aubio_sink_wavwrite\n"); 76 76 #endif /* HAVE_WAVWRITE */ -
tests/src/io/test-sink_wavwrite.c
rc0ce78f r8968ea7 11 11 12 12 if (argc < 3) { 13 err = 2;14 PRINT_ERR("not enough arguments\n");13 PRINT_ERR("not enough arguments, running tests\n"); 14 err = run_on_default_source_and_sink(main); 15 15 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [hop_size]\n", argv[0]); 16 16 return err; … … 61 61 beach_fvec: 62 62 #else 63 err = 3;63 err = 0; 64 64 PRINT_ERR("aubio was not compiled with aubio_sink_wavwrite\n"); 65 65 #endif /* HAVE_WAVWRITE */ -
tests/src/io/test-source.c
rc0ce78f r8968ea7 6 6 uint_t err = 0; 7 7 if (argc < 2) { 8 err = 2;9 PRINT_ERR("not enough arguments\n");8 PRINT_ERR("not enough arguments, running tests\n"); 9 err = run_on_default_source(main); 10 10 PRINT_MSG("read a wave file as a mono vector\n"); 11 11 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); … … 23 23 uint_t hop_size = 256; 24 24 uint_t n_frames = 0, read = 0; 25 if ( argc == 3 ) samplerate = atoi(argv[2]);26 if ( argc == 4 ) hop_size = atoi(argv[3]);25 if ( argc >= 3 ) samplerate = atoi(argv[2]); 26 if ( argc >= 4 ) hop_size = atoi(argv[3]); 27 27 28 28 char_t *source_path = argv[1]; -
tests/src/io/test-source_apple_audio.c
rc0ce78f r8968ea7 10 10 uint_t err = 0; 11 11 if (argc < 2) { 12 err = 2;13 PRINT_ERR("not enough arguments\n");12 PRINT_ERR("not enough arguments, running tests\n"); 13 err = run_on_default_source(main); 14 14 PRINT_MSG("read a wave file as a mono vector\n"); 15 15 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); … … 28 28 uint_t hop_size = 256; 29 29 uint_t n_frames = 0, read = 0; 30 if ( argc == 3 ) samplerate = atoi(argv[2]);31 if ( argc == 4 ) hop_size = atoi(argv[3]);30 if ( argc >= 3 ) samplerate = atoi(argv[2]); 31 if ( argc >= 4 ) hop_size = atoi(argv[3]); 32 32 33 33 char_t *source_path = argv[1]; … … 57 57 beach: 58 58 #else /* HAVE_SOURCE_APPLE_AUDIO */ 59 err = 3;59 err = 0; 60 60 PRINT_ERR("aubio was not compiled with aubio_source_apple_audio\n"); 61 61 #endif /* HAVE_SOURCE_APPLE_AUDIO */ -
tests/src/io/test-source_avcodec.c
rc0ce78f r8968ea7 10 10 uint_t err = 0; 11 11 if (argc < 2) { 12 err = 2;13 PRINT_ERR("not enough arguments\n");12 PRINT_ERR("not enough arguments, running tests\n"); 13 err = run_on_default_source(main); 14 14 PRINT_MSG("read a wave file as a mono vector\n"); 15 15 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); … … 28 28 uint_t hop_size = 256; 29 29 uint_t n_frames = 0, read = 0; 30 if ( argc == 3 ) samplerate = atoi(argv[2]);31 if ( argc == 4 ) hop_size = atoi(argv[3]);30 if ( argc >= 3 ) samplerate = atoi(argv[2]); 31 if ( argc >= 4 ) hop_size = atoi(argv[3]); 32 32 33 33 char_t *source_path = argv[1]; … … 57 57 beach: 58 58 #else /* HAVE_LIBAV */ 59 err = 3;59 err = 0; 60 60 PRINT_ERR("aubio was not compiled with aubio_source_avcodec\n"); 61 61 #endif /* HAVE_LIBAV */ -
tests/src/io/test-source_multi.c
rc0ce78f r8968ea7 6 6 sint_t err = 0; 7 7 if (argc < 2) { 8 err = -2;9 PRINT_ERR("not enough arguments\n");8 PRINT_ERR("not enough arguments, running tests\n"); 9 err = run_on_default_source(main); 10 10 PRINT_MSG("read a wave file as a mono vector\n"); 11 11 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); -
tests/src/io/test-source_seek.c
rc0ce78f r8968ea7 6 6 uint_t err = 0; 7 7 if (argc < 2) { 8 err = 2;9 PRINT_ERR("not enough arguments\n");8 PRINT_ERR("not enough arguments, running tests\n"); 9 err = run_on_default_source(main); 10 10 PRINT_MSG("read a wave file as a mono vector\n"); 11 11 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); … … 24 24 uint_t n_frames = 0, read = 0; 25 25 uint_t old_n_frames_1 = 0, old_n_frames_2 = 0, old_n_frames_3 = 0; 26 if ( argc == 3 ) samplerate = atoi(argv[2]);27 if ( argc == 4 ) hop_size = atoi(argv[3]);26 if ( argc >= 3 ) samplerate = atoi(argv[2]); 27 if ( argc >= 4 ) hop_size = atoi(argv[3]); 28 28 29 29 char_t *source_path = argv[1]; -
tests/src/io/test-source_sndfile.c
rc0ce78f r8968ea7 10 10 uint_t err = 0; 11 11 if (argc < 2) { 12 err = 2;13 PRINT_ERR("not enough arguments\n");12 PRINT_ERR("not enough arguments, running tests\n"); 13 err = run_on_default_source(main); 14 14 PRINT_MSG("read a wave file as a mono vector\n"); 15 15 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); … … 28 28 uint_t hop_size = 256; 29 29 uint_t n_frames = 0, read = 0; 30 if ( argc == 3 ) samplerate = atoi(argv[2]);31 if ( argc == 4 ) hop_size = atoi(argv[3]);30 if ( argc >= 3 ) samplerate = atoi(argv[2]); 31 if ( argc >= 4 ) hop_size = atoi(argv[3]); 32 32 33 33 char_t *source_path = argv[1]; … … 57 57 beach: 58 58 #else 59 err = 3;59 err = 0; 60 60 PRINT_ERR("aubio was not compiled with aubio_source_sndfile\n"); 61 61 #endif /* HAVE_SNDFILE */ -
tests/src/io/test-source_wavread.c
rc0ce78f r8968ea7 10 10 uint_t err = 0; 11 11 if (argc < 2) { 12 err = 2;13 PRINT_ERR("not enough arguments\n");12 PRINT_ERR("not enough arguments, running tests\n"); 13 err = run_on_default_source(main); 14 14 PRINT_MSG("read a wave file as a mono vector\n"); 15 15 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); … … 28 28 uint_t hop_size = 256; 29 29 uint_t n_frames = 0, read = 0; 30 if ( argc == 3 ) samplerate = atoi(argv[2]);31 if ( argc == 4 ) hop_size = atoi(argv[3]);30 if ( argc >= 3 ) samplerate = atoi(argv[2]); 31 if ( argc >= 4 ) hop_size = atoi(argv[3]); 32 32 33 33 char_t *source_path = argv[1]; … … 36 36 aubio_source_wavread_t * s = 37 37 new_aubio_source_wavread(source_path, samplerate, hop_size); 38 39 38 if (!s) { err = 1; goto beach; } 40 39 fvec_t *vec = new_fvec(hop_size); … … 58 57 beach: 59 58 #else 60 err = 3;59 err = 0; 61 60 PRINT_ERR("aubio was not compiled with aubio_source_wavread\n"); 62 61 #endif /* HAVE_WAVREAD */ -
tests/src/onset/test-onset.c
rc0ce78f r8968ea7 10 10 err = 2; 11 11 PRINT_WRN("no arguments, running tests\n"); 12 if (test_wrong_params() != 0) { 13 PRINT_ERR("tests failed!\n"); 14 err = 1; 15 } else { 16 err = 0; 17 } 12 err = test_wrong_params(); 18 13 PRINT_MSG("usage: %s <source_path> [samplerate] [hop_size]\n", argv[0]); 19 14 return err; … … 23 18 uint_t hop_size = win_s / 4; 24 19 uint_t n_frames = 0, read = 0; 25 if ( argc == 3 ) samplerate = atoi(argv[2]);26 if ( argc == 4 ) hop_size = atoi(argv[3]);20 if ( argc >= 3 ) samplerate = atoi(argv[2]); 21 if ( argc >= 4 ) hop_size = atoi(argv[3]); 27 22 28 23 char_t *source_path = argv[1]; … … 90 85 if (new_aubio_onset("abcd", win_size, win_size/2, samplerate)) 91 86 return 1; 92 // pv creation failed93 if (new_aubio_onset("default", 5, 2, samplerate))94 return 1;95 87 96 88 aubio_onset_t *o; 89 90 // pv creation might fail 91 o = new_aubio_onset("default", 5, 2, samplerate); 92 if (o) del_aubio_onset(o); 93 97 94 o = new_aubio_onset("default", win_size, hop_size, samplerate); 98 95 if (!aubio_onset_set_default_parameters(o, "wrong_type")) … … 100 97 del_aubio_onset(o); 101 98 102 return 0;99 return run_on_default_source(main); 103 100 } -
tests/src/spectral/test-awhitening.c
rc0ce78f r8968ea7 11 11 err = 2; 12 12 PRINT_WRN("no arguments, running tests\n"); 13 if (test_wrong_params() != 0) { 14 PRINT_ERR("tests failed!\n"); 15 err = 1; 16 } else { 17 err = 0; 18 } 13 err = test_wrong_params(); 19 14 PRINT_MSG("usage: %s <input_path> <output_path> [samplerate] [hop_size]\n", argv[0]); 20 15 return err; … … 31 26 if ( argc >= 4 ) samplerate = atoi(argv[3]); 32 27 if ( argc >= 5 ) hop_size = atoi(argv[4]); 33 if ( argc >= 6 ) {34 err = 2;35 PRINT_ERR("too many arguments\n");36 return err;37 }38 28 39 29 fvec_t *vec = new_fvec(hop_size); … … 109 99 del_aubio_spectral_whitening(o); 110 100 111 return 0;101 return run_on_default_source_and_sink(main); 112 102 } -
tests/src/spectral/test-dct.c
rc0ce78f r8968ea7 33 33 aubio_dct_rdo (dct, dctout, out); 34 34 for (j = 0; j < in->length; j++) { 35 if (fabsf(in->data[j] - out->data[j]) > 10.e-4) { 36 fprintf(stderr, "dct reconstruction failed\n"); 37 } 35 return_code += (fabsf(in->data[j] - out->data[j]) > 10.e-4); 38 36 } 39 37 } -
tests/src/synth/test-sampler.c
rc0ce78f r8968ea7 1 #include <string.h> // strncpy 2 #include <limits.h> // PATH_MAX 1 3 #include <aubio.h> 2 4 #include "utils_tests.h" … … 6 8 sint_t err = 0; 7 9 8 if (argc < 4) {9 err = 2;10 PRINT_ERR("not enough arguments\n");10 if (argc < 3) { 11 PRINT_ERR("not enough arguments, running tests\n"); 12 err = run_on_default_source_and_sink(main); 11 13 PRINT_MSG("usage: %s <input_path> <output_path> <sample_path> [samplerate]\n", argv[0]); 12 14 return err; … … 19 21 char_t *source_path = argv[1]; 20 22 char_t *sink_path = argv[2]; 21 char_t *sample_path = argv[3]; 22 if ( argc == 5 ) samplerate = atoi(argv[4]); 23 char_t sample_path[PATH_MAX]; 24 if ( argc >= 4 ) { 25 strncpy(sample_path, argv[3], PATH_MAX - 1); 26 } else { 27 // use input_path as sample 28 strncpy(sample_path, source_path, PATH_MAX - 1); 29 } 30 sample_path[PATH_MAX - 1] = '\0'; 31 if ( argc >= 5 ) samplerate = atoi(argv[4]); 23 32 24 33 fvec_t *vec = new_fvec(hop_size); -
tests/src/synth/test-wavetable.c
rc0ce78f r8968ea7 7 7 8 8 if (argc < 2) { 9 err = 2;10 PRINT_ERR("not enough arguments\n");9 PRINT_ERR("not enough arguments, running tests\n"); 10 err = run_on_default_sink(main); 11 11 PRINT_MSG("usage: %s <output_path> [freq] [samplerate]\n", argv[0]); 12 12 return err; … … 18 18 19 19 char_t *sink_path = argv[1]; 20 if ( argc == 4 ) samplerate = atoi(argv[3]);21 if ( argc == 3 ) freq = atof(argv[2]);20 if ( argc >= 4 ) samplerate = atoi(argv[3]); 21 if ( argc >= 3 ) freq = atof(argv[2]); 22 22 23 23 fvec_t *vec = new_fvec(hop_size); -
tests/src/tempo/test-tempo.c
rc0ce78f r8968ea7 8 8 uint_t err = 0; 9 9 if (argc < 2) { 10 err = 2;11 10 PRINT_WRN("no arguments, running tests\n"); 12 if (test_wrong_params() != 0) { 13 PRINT_ERR("tests failed!\n"); 14 err = 1; 15 } else { 16 err = 0; 17 } 11 err = test_wrong_params(); 18 12 PRINT_MSG("usage: %s <source_path> [samplerate] [win_size] [hop_size]\n", 19 13 argv[0]); … … 136 130 del_fvec(out); 137 131 138 return 0;132 return run_on_default_source(main); 139 133 } -
tests/src/test-mathutils.c
rc0ce78f r8968ea7 103 103 104 104 window_size /= 2.; 105 window = new_aubio_window(" triangle", window_size);105 window = new_aubio_window("parzen", window_size); 106 106 fvec_print(window); 107 107 del_fvec(window); … … 117 117 test_miditofreq(); 118 118 test_freqtomidi(); 119 test_aubio_window(); 119 120 return 0; 120 121 } -
tests/utils_tests.h
rc0ce78f r8968ea7 5 5 #include <assert.h> 6 6 #include "config.h" 7 8 #ifdef HAVE_STRING_H 9 #include <string.h> 10 #endif 11 12 #ifdef HAVE_UNISTD_H 13 #include <unistd.h> // unlink, close 14 #endif 15 16 #ifdef HAVE_LIMITS_H 17 #include <limits.h> // PATH_MAX 18 #endif /* HAVE_LIMITS_H */ 19 #ifndef PATH_MAX 20 #define PATH_MAX 1024 21 #endif 22 23 #if defined(HAVE_WIN_HACKS) && !defined(__GNUC__) 24 #include <io.h> // _access 25 #endif 26 27 // This macro is used to pass a string to msvc compiler: since msvc's -D flag 28 // strips the quotes, we define the string without quotes and re-add them with 29 // this macro. 30 31 #define REDEFINESTRING(x) #x 32 #define DEFINEDSTRING(x) REDEFINESTRING(x) 33 34 #ifndef AUBIO_TESTS_SOURCE 35 #error "AUBIO_TESTS_SOURCE is not defined" 36 #endif 7 37 8 38 #ifdef HAVE_C99_VARARGS_MACROS … … 48 78 time_t now = time(0); 49 79 struct tm *tm_struct = localtime(&now); 50 int seed = tm_struct->tm_sec; 80 size_t **tm_address = (void*)&tm_struct; 81 int seed = tm_struct->tm_sec + (size_t)tm_address; 51 82 //PRINT_WRN("current seed: %d\n", seed); 52 srandom ( seed);83 srandom ((unsigned int)seed); 53 84 } 85 86 // create_temp_sink / close_temp_sink 87 #if defined(__GNUC__) // mkstemp 88 89 int check_source(char *source_path) 90 { 91 return access(source_path, R_OK); 92 } 93 94 int create_temp_sink(char *sink_path) 95 { 96 return mkstemp(sink_path); 97 } 98 99 int close_temp_sink(char *sink_path, int sink_fildes) 100 { 101 int err; 102 if ((err = close(sink_fildes)) != 0) return err; 103 if ((err = unlink(sink_path)) != 0) return err; 104 return err; 105 } 106 107 #elif defined(HAVE_WIN_HACKS) //&& !defined(__GNUC__) 108 // windows workaround, where mkstemp does not exist... 109 110 int check_source(char *source_path) 111 { 112 return _access(source_path, 04); 113 } 114 115 int create_temp_sink(char *templ) 116 { 117 int i = 0; 118 static const char letters[] = "abcdefg0123456789"; 119 int letters_len = strlen(letters); 120 int templ_len = strlen(templ); 121 if (templ_len == 0) return 0; 122 utils_init_random(); 123 for (i = 0; i < 6; i++) 124 { 125 templ[templ_len - i] = letters[rand() % letters_len]; 126 } 127 return 1; 128 } 129 130 int close_temp_sink(char* sink_path, int sink_fildes) { 131 // the file should be closed when not using mkstemp, no need to open it 132 if (sink_fildes == 0) return 1; 133 return _unlink(sink_path); 134 } 135 136 #else // windows workaround 137 // otherwise, we don't really know what to do yet 138 #error "mkstemp undefined, but not on windows. additional workaround required." 139 #endif 140 141 // pass progname / default 142 int run_on_default_source( int main(int, char**) ) 143 { 144 const int argc = 2; 145 int err = 0; 146 char** argv = (char**)calloc(argc, sizeof(char*)); 147 argv[0] = __FILE__; 148 argv[1] = DEFINEDSTRING(AUBIO_TESTS_SOURCE); 149 // check if the file can be read 150 if ( check_source(argv[1]) ) return 1; 151 err = main(argc, argv); 152 if (argv) free(argv); 153 return err; 154 } 155 156 int run_on_default_sink( int main(int, char**) ) 157 { 158 const int argc = 2; 159 int err = 0; 160 char** argv = (char**)calloc(argc, sizeof(char*)); 161 char sink_path[PATH_MAX] = "tmp_aubio_XXXXXX"; 162 int fd = create_temp_sink(sink_path); 163 if (!fd) return 1; 164 argv[0] = __FILE__; 165 argv[1] = sink_path; 166 err = main(argc, argv); 167 close_temp_sink(sink_path, fd); 168 if (argv) free(argv); 169 return err; 170 } 171 172 int run_on_default_source_and_sink( int main(int, char**) ) 173 { 174 const int argc = 3; 175 int err = 0; 176 char** argv = (char**)calloc(argc, sizeof(char*)); 177 char sink_path[PATH_MAX] = "tmp_aubio_XXXXXX"; 178 int fd = create_temp_sink(sink_path); 179 if (!fd) return 1; 180 argv[0] = __FILE__; 181 argv[1] = DEFINEDSTRING(AUBIO_TESTS_SOURCE); 182 argv[2] = sink_path; 183 // check if the file can be read 184 if ( check_source(argv[1]) ) return 1; 185 err = main(argc, argv); 186 close_temp_sink(sink_path, fd); 187 if (argv) free(argv); 188 return err; 189 } -
tests/wscript_build
rc0ce78f r8968ea7 8 8 programs_sources = ctx.path.ant_glob('src/**/*.c') 9 9 10 test_sound_target = '44100Hz_44100f_sine441_stereo.wav' 11 test_sound_abspath = bld.path.get_bld().make_node(test_sound_target) 12 # workaround to double escape backslash characters on windows 13 test_sound_abspath = str(test_sound_abspath).replace('\\', '\\\\') 14 15 b = bld(name='create_tests_source', 16 rule='python ${SRC} ${TGT}', 17 source='create_tests_source.py', 18 target=test_sound_target) 19 # use post() to create the task, keep a reference to it 20 b.post() 21 create_tests_source = b.tasks[0] 22 10 23 for source_file in programs_sources: 11 24 target = os.path.basename(os.path.splitext(str(source_file))[0]) 12 bld(features = 'c cprogram test',25 a = bld(features = 'c cprogram test', 13 26 source = source_file, 14 27 target = target, … … 16 29 use = uselib, 17 30 install_path = None, 18 defines = 'AUBIO_UNSTABLE_API=1', 31 defines = ['AUBIO_UNSTABLE_API=1', 32 'AUBIO_TESTS_SOURCE={}'.format(test_sound_abspath)] 19 33 ) 34 a.post() 35 # make sure the unit_test task runs *after* the source is created 36 a.tasks[-1].set_run_after(create_tests_source)
Note: See TracChangeset
for help on using the changeset viewer.