ref: 7625d852e852a0082a527ba33be8950452efdf69
parent: f73f3fbe1450637131ba3b159e01fb417906bdf4
author: Paul Brossier <piem@piem.org>
date: Wed Nov 28 10:28:30 EST 2018
[tests] check new_aubio_pitch fails with wrong parameters
--- a/tests/src/pitch/test-pitch.c
+++ b/tests/src/pitch/test-pitch.c
@@ -30,5 +30,42 @@
del_fvec (input);
aubio_cleanup ();
+ if (new_aubio_pitch(0, win_s, hop_s, samplerate)) return 1;
+ if (new_aubio_pitch("unknown", win_s, hop_s, samplerate)) return 1;
+ if (new_aubio_pitch("default", win_s, 0, samplerate)) return 1;
+ if (new_aubio_pitch("default", 0, hop_s, samplerate)) return 1;
+ if (new_aubio_pitch("default", hop_s, win_s, samplerate)) return 1;
+ if (new_aubio_pitch("default", win_s, hop_s, 0)) return 1;
+
+ o = new_aubio_pitch("default", win_s, hop_s, samplerate);
+
+ if (aubio_pitch_set_unit(o, "freq")) return 1;
+ if (aubio_pitch_set_unit(o, "hertz")) return 1;
+ if (aubio_pitch_set_unit(o, "Hertz")) return 1;
+ if (aubio_pitch_set_unit(o, "Hz")) return 1;
+ if (aubio_pitch_set_unit(o, "f0")) return 1;
+ if (aubio_pitch_set_unit(o, "midi")) return 1;
+ if (aubio_pitch_set_unit(o, "cent")) return 1;
+ if (aubio_pitch_set_unit(o, "bin")) return 1;
+ if (!aubio_pitch_set_unit(o, "unknown")) return 1;
+
+ if (aubio_pitch_set_tolerance(o, 0.3)) return 1;
+ if (aubio_pitch_set_silence(o, 0)) return 1;
+ if (aubio_pitch_set_silence(o, -200)) return 1;
+ if (!aubio_pitch_set_silence(o, -300)) return 1;
+ del_aubio_pitch(o);
+
+ // fft based might fail with non power of 2
+ o = new_aubio_pitch("yinfft", win_s + 1, hop_s, samplerate);
+ if (o) del_aubio_pitch(o);
+ o = new_aubio_pitch("yinfast", win_s + 1, hop_s, samplerate);
+ if (o) del_aubio_pitch(o);
+ o = new_aubio_pitch("fcomb", win_s + 1, hop_s, samplerate);
+ if (o) del_aubio_pitch(o);
+ o = new_aubio_pitch("mcomb", win_s + 1, hop_s, samplerate);
+ if (o) del_aubio_pitch(o);
+ o = new_aubio_pitch("specacf", win_s + 1, hop_s, samplerate);
+ if (o) del_aubio_pitch(o);
+
return 0;
}