- Timestamp:
- Dec 21, 2018, 8:06:09 PM (6 years ago)
- Branches:
- feature/autosink, feature/cnn, feature/crepe, fix/ffmpeg5, master
- Children:
- 1c565c0, 59109e9
- Parents:
- 4ed1e47 (diff), a280ed1 (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/src
- Files:
-
- 1 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
tests/src/io/base-sink_custom.h
r4ed1e47 r131d1eb 152 152 close_temp_sink(sink_path, fd); 153 153 154 // shouldn't crash on null (bypassed, only check del_aubio_sink) 155 // del_aubio_sink_custom(NULL); 156 154 157 return run_on_default_source_and_sink(base_main); 155 158 } -
tests/src/io/base-source_custom.h
r4ed1e47 r131d1eb 142 142 aubio_source_custom_close(s); 143 143 144 // reading after close fails 145 del_fvec(vec); 146 vec = new_fvec(hop_size); 147 aubio_source_custom_do(s, vec, &read); 148 del_fmat(mat); 149 mat = new_fmat(channels, hop_size); 150 aubio_source_custom_do_multi(s, mat, &read); 151 144 152 del_aubio_source_custom(s); 145 153 del_fmat(mat); 146 154 del_fvec(vec); 155 156 // shouldn't crash on null (bypassed, only check del_aubio_source) 157 // del_aubio_source_custom(NULL); 147 158 148 159 return run_on_default_source(base_main); -
tests/src/io/test-sink.c
r4ed1e47 r131d1eb 148 148 close_temp_sink(sink_path, fd); 149 149 150 // shouldn't crash on null 151 del_aubio_sink(NULL); 152 150 153 return run_on_default_source_and_sink(main); 151 154 } -
tests/src/io/test-source.c
r4ed1e47 r131d1eb 138 138 aubio_source_close(s); 139 139 140 // reading after close fails 141 del_fvec(vec); 142 vec = new_fvec(hop_size); 143 aubio_source_do(s, vec, &read); 144 del_fmat(mat); 145 mat = new_fmat(channels, hop_size); 146 aubio_source_do_multi(s, mat, &read); 147 140 148 del_aubio_source(s); 141 149 del_fmat(mat); 142 150 del_fvec(vec); 143 151 152 // shouldn't crash on null 153 del_aubio_source(NULL); 154 144 155 return run_on_default_source(main); 145 156 } -
tests/src/test-cvec.c
r4ed1e47 r131d1eb 4 4 int main (void) 5 5 { 6 uint_t i, window_size = 16; // window size7 cvec_t * complex_vector = new_cvec (window_size); // input buffer8 uint_t rand_times = 4;6 uint_t i, window_size = 16; 7 cvec_t * complex_vector = new_cvec(window_size); 8 cvec_t * other_cvector = new_cvec(window_size); 9 9 10 utils_init_random(); 10 assert(cvec_norm_get_data(complex_vector) == complex_vector->norm); 11 assert(cvec_phas_get_data(complex_vector) == complex_vector->phas); 12 assert(complex_vector->length == window_size / 2 + 1); 11 13 12 while (rand_times -- ) { 13 // fill with random phas and norm 14 for ( i = 0; i < complex_vector->length; i++ ) { 15 complex_vector->norm[i] = ( 2. / RAND_MAX * random() - 1. ); 16 complex_vector->phas[i] = ( 2. / RAND_MAX * random() - 1. ) * M_PI; 17 } 18 // print the vector 19 cvec_print(complex_vector); 14 // all elements are initialized to 0 15 for ( i = 0; i < complex_vector->length; i++ ) { 16 assert( complex_vector->norm[i] == 0. ); 17 assert( complex_vector->phas[i] == 0. ); 20 18 } 21 19 22 // set all vector elements to `0` 20 cvec_norm_set_sample(complex_vector, 2., 1); 21 assert(cvec_norm_get_sample(complex_vector, 1)); 22 23 cvec_phas_set_sample(complex_vector, 2., 1); 24 assert(cvec_phas_get_sample(complex_vector, 1)); 25 26 cvec_print(complex_vector); 27 28 // set all norm and phas elements to 0 29 cvec_zeros(complex_vector); 30 for ( i = 0; i < complex_vector->length; i++ ) { 31 assert( complex_vector->norm[i] == 0. ); 32 assert( complex_vector->phas[i] == 0. ); 33 } 34 35 // set all norm elements to 1 36 cvec_norm_ones(complex_vector); 37 for ( i = 0; i < complex_vector->length; i++ ) { 38 assert( complex_vector->norm[i] == 1. ); 39 } 40 41 // set all norm elements to 0 23 42 cvec_norm_zeros(complex_vector); 24 43 for ( i = 0; i < complex_vector->length; i++ ) { 25 44 assert( complex_vector->norm[i] == 0. ); 26 // assert( complex_vector->phas[i] == 0 );27 45 } 28 cvec_print(complex_vector);29 46 30 // set all vector elements to `1`31 cvec_ norm_ones(complex_vector);47 // set all phas elements to 1 48 cvec_phas_ones(complex_vector); 32 49 for ( i = 0; i < complex_vector->length; i++ ) { 33 assert( complex_vector->norm[i] == 1. ); 34 // assert( complex_vector->phas[i] == 0 ); 50 assert( complex_vector->phas[i] == 1. ); 35 51 } 36 cvec_print(complex_vector);37 52 38 cvec_zeros(complex_vector);53 // set all phas elements to 0 39 54 cvec_phas_zeros(complex_vector); 40 cvec_norm_zeros(complex_vector); 41 cvec_norm_ones(complex_vector); 42 cvec_phas_ones(complex_vector); 55 for ( i = 0; i < complex_vector->length; i++ ) { 56 assert( complex_vector->phas[i] == 0. ); 57 } 58 59 cvec_copy(complex_vector, other_cvector); 60 // copy to self 43 61 cvec_copy(complex_vector, complex_vector); 62 // copy to a different size fails 63 del_cvec(other_cvector); 64 other_cvector = new_cvec(window_size + 2); 65 cvec_copy(complex_vector, other_cvector); 44 66 45 // destroy it 46 del_cvec(complex_vector); 67 if (complex_vector) 68 del_cvec(complex_vector); 69 if (other_cvector) 70 del_cvec(other_cvector); 71 72 // wrong parameters 73 assert(new_cvec(-1) == NULL); 74 assert(new_cvec(0) == NULL); 75 47 76 return 0; 48 77 } -
tests/src/test-fmat.c
r4ed1e47 r131d1eb 5 5 // and j the column. 6 6 7 void assert_fmat_all_equal(fmat_t *mat, smpl_t scalar) 8 { 9 uint_t i, j; 10 for ( i = 0; i < mat->height; i++ ) { 11 for ( j = 0; j < mat->length; j++ ) { 12 assert(mat->data[i][j] == scalar); 13 } 14 } 15 } 16 7 17 int main (void) 8 18 { 9 uint_t height = 3, length = 9, i, j; 19 uint_t i, j; 20 uint_t height = 3, length = 9; 21 10 22 // create fmat_t object 11 fmat_t * mat = new_fmat (height, length); 12 for ( i = 0; i < mat->height; i++ ) { 13 for ( j = 0; j < mat->length; j++ ) { 23 fmat_t * mat = new_fmat(height, length); 24 fmat_t * other_mat = new_fmat(height, length); 25 26 assert(mat); 27 assert(other_mat); 28 29 assert(mat->length == length); 30 assert(mat->height == height); 31 32 for (i = 0; i < mat->height; i++) { 33 for (j = 0; j < mat->length; j++) { 14 34 // all elements are already initialized to 0. 15 35 assert(mat->data[i][j] == 0); 16 36 // setting element of row i, column j 17 mat->data[i][j] = i * 1 . + j *.1;37 mat->data[i][j] = i * 10. + j; 18 38 } 19 39 } 40 41 // print out matrix 42 fmat_print(mat); 43 44 // helpers 45 fmat_rev(mat); 46 fmat_print(mat); 47 for (i = 0; i < mat->height; i++) { 48 for (j = 0; j < mat->length; j++) { 49 assert(mat->data[i][j] == i * 10. + mat->length - 1. - j); 50 } 51 } 52 53 fmat_set_sample(mat, 3, 1, 1); 54 assert(fmat_get_sample(mat, 1, 1) == 3.); 55 56 fmat_ones(mat); 57 assert_fmat_all_equal(mat, 1.); 58 59 fmat_set(other_mat, .5); 60 assert_fmat_all_equal(other_mat, .5); 61 62 fmat_weight(mat, other_mat); 63 assert_fmat_all_equal(mat, .5); 64 20 65 fvec_t channel_onstack; 21 66 fvec_t *channel = &channel_onstack; 22 67 fmat_get_channel(mat, 1, channel); 23 fvec_print (channel); 24 // print out matrix 25 fmat_print(mat); 26 // destroy it 27 del_fmat(mat); 68 assert(channel->data == mat->data[1]); 69 70 // copy of the same size 71 fmat_copy(mat, other_mat); 72 del_fmat(other_mat); 73 74 // copy to undersized 75 other_mat = new_fmat(height - 1, length); 76 fmat_copy(mat, other_mat); 77 del_fmat(other_mat); 78 79 // copy from undersized 80 other_mat = new_fmat(height, length + 1); 81 fmat_copy(mat, other_mat); 82 83 // wrong parameters 84 assert(new_fmat(-1, length) == NULL); 85 assert(new_fmat(height, -1) == NULL); 86 87 // methods for wrappers with opaque structure 88 assert (fmat_get_channel_data(mat, 0) == mat->data[0]); 89 assert (fmat_get_data(mat) == mat->data); 90 91 if (mat) 92 del_fmat(mat); 93 if (other_mat) 94 del_fmat(other_mat); 28 95 return 0; 29 96 } 30 -
tests/src/test-fvec.c
r4ed1e47 r131d1eb 2 2 #include "utils_tests.h" 3 3 4 void assert_fvec_all_equal(fvec_t *vec, smpl_t scalar) 5 { 6 uint_t i; 7 for (i = 0; i < vec->length; i++) { 8 assert(vec->data[i] == scalar); 9 } 10 } 11 4 12 int main (void) 5 13 { 6 uint_t vec_size = 10, i; 7 fvec_t * vec = new_fvec (vec_size); 14 uint_t length = 10; 15 uint_t i; 16 17 fvec_t * vec = new_fvec (length); 18 fvec_t * other_vec = new_fvec (length); 19 20 assert (vec); 21 assert (other_vec); 8 22 9 23 // vec->length matches requested size 10 assert(vec->length == vec_size);24 assert(vec->length == length); 11 25 12 26 // all elements are initialized to `0.` … … 15 29 } 16 30 31 // all elements can be set to `1.` 32 fvec_ones(vec); 33 assert_fvec_all_equal(vec, 1.); 34 17 35 // all elements can be set to `0.` 18 36 fvec_zeros(vec); 19 for ( i = 0; i < vec->length; i++ ) { 20 assert(vec->data[i] == 0.); 21 } 22 fvec_print(vec); 23 24 // all elements can be set to `1.` 25 fvec_ones(vec); 26 for ( i = 0; i < vec->length; i++ ) { 27 assert(vec->data[i] == 1.); 28 } 29 fvec_print(vec); 37 assert_fvec_all_equal(vec, 0.); 30 38 31 39 // each element can be accessed directly … … 36 44 fvec_print(vec); 37 45 46 fvec_set_sample(vec, 3, 2); 47 assert(fvec_get_sample(vec, 2) == 3); 48 49 assert(fvec_get_data(vec) == vec->data); 50 51 // wrong parameters 52 assert(new_fvec(-1) == NULL); 53 54 // copy to an identical size works 55 fvec_copy(vec, other_vec); 56 del_fvec(other_vec); 57 58 // copy to a different size fail 59 other_vec = new_fvec(length + 1); 60 fvec_copy(vec, other_vec); 61 del_fvec(other_vec); 62 63 // copy to a different size fail 64 other_vec = new_fvec(length - 1); 65 fvec_copy(vec, other_vec); 66 38 67 // now destroys the vector 39 del_fvec(vec); 40 68 if (vec) 69 del_fvec(vec); 70 if (other_vec) 71 del_fvec(other_vec); 41 72 return 0; 42 73 } 43 -
tests/src/test-lvec.c
r4ed1e47 r131d1eb 2 2 #include "utils_tests.h" 3 3 4 void assert_lvec_all_equal(lvec_t *vec, lsmp_t scalar) 5 { 6 uint_t i; 7 for (i = 0; i < vec->length; i++) { 8 assert(vec->data[i] == scalar); 9 } 10 } 11 4 12 int main (void) 5 13 { 6 uint_t win_s = 32; // window size 7 lvec_t * sp = new_lvec (win_s); // input buffer 8 lvec_set_sample (sp, 2./3., 0); 9 PRINT_MSG(AUBIO_LSMP_FMT "\n", lvec_get_sample (sp, 0)); 10 lvec_print (sp); 11 lvec_ones (sp); 12 lvec_print (sp); 13 lvec_set_all (sp, 3./5.); 14 lvec_print (sp); 15 del_lvec(sp); 14 uint_t length = 32; // window size 15 16 lvec_t * vec = new_lvec (length); // input buffer 17 18 assert(vec); 19 20 assert(vec->length == length); 21 22 lvec_set_sample (vec, 3., 0); 23 assert(lvec_get_sample(vec, 0) == 3.); 24 25 assert(lvec_get_data(vec) == vec->data); 26 27 lvec_print (vec); 28 // note AUBIO_LSMP_FMT can be used to print lsmp_t 29 PRINT_MSG(AUBIO_LSMP_FMT "\n", lvec_get_sample (vec, 0)); 30 31 lvec_set_all (vec, 2.); 32 assert_lvec_all_equal(vec, 2.); 33 34 lvec_ones (vec); 35 assert_lvec_all_equal(vec, 1.); 36 37 lvec_zeros (vec); 38 assert_lvec_all_equal(vec, 0.); 39 40 del_lvec(vec); 41 42 // wrong parameters 43 assert(new_lvec(0) == NULL); 44 assert(new_lvec(-1) == NULL); 45 16 46 return 0; 17 47 } 18 -
tests/src/test-mathutils-window.c
r4ed1e47 r131d1eb 8 8 uint_t lengths[4] = { 8, 10, 15, 16 }; 9 9 char *method = "default"; 10 char *window_types[1 0] = { "default",11 " rectangle", "hamming", "hanning", "hanningz",10 char *window_types[11] = { "default", 11 "ones", "rectangle", "hamming", "hanning", "hanningz", 12 12 "blackman", "blackman_harris", "gaussian", "welch", "parzen"}; 13 13 … … 27 27 } 28 28 } 29 30 assert (new_aubio_window("parzen", -1) == NULL); 31 assert (new_aubio_window(NULL, length) == NULL); 32 assert (new_aubio_window("\0", length) == NULL); 29 33 return 0; 30 34 }
Note: See TracChangeset
for help on using the changeset viewer.