summaryrefslogtreecommitdiff
path: root/python/tests/test_onset.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/tests/test_onset.py')
-rwxr-xr-xpython/tests/test_onset.py87
1 files changed, 87 insertions, 0 deletions
diff --git a/python/tests/test_onset.py b/python/tests/test_onset.py
new file mode 100755
index 0000000..dcb6dab
--- /dev/null
+++ b/python/tests/test_onset.py
@@ -0,0 +1,87 @@
+#! /usr/bin/env python
+
+from unittest import main
+from numpy.testing import TestCase, assert_equal, assert_almost_equal
+from aubio import onset
+
+class aubio_onset_default(TestCase):
+
+ def test_members(self):
+ o = onset()
+ assert_equal ([o.buf_size, o.hop_size, o.method, o.samplerate],
+ [1024,512,'default',44100])
+
+class aubio_onset_params(TestCase):
+
+ samplerate = 44100
+
+ def setUp(self):
+ self.o = onset(samplerate = self.samplerate)
+
+ def test_get_delay(self):
+ assert_equal (self.o.get_delay(), int(4.3 * self.o.hop_size))
+
+ def test_get_delay_s(self):
+ assert_almost_equal (self.o.get_delay_s(), self.o.get_delay() / float(self.samplerate))
+
+ def test_get_delay_ms(self):
+ assert_almost_equal (self.o.get_delay_ms(), self.o.get_delay() * 1000. / self.samplerate, 5)
+
+ def test_get_minioi(self):
+ assert_almost_equal (self.o.get_minioi(), 0.02 * self.samplerate)
+
+ def test_get_minioi_s(self):
+ assert_almost_equal (self.o.get_minioi_s(), 0.02)
+
+ def test_get_minioi_ms(self):
+ assert_equal (self.o.get_minioi_ms(), 20.)
+
+ def test_get_threshold(self):
+ assert_almost_equal (self.o.get_threshold(), 0.3)
+
+ def test_set_delay(self):
+ val = 256
+ self.o.set_delay(val)
+ assert_equal (self.o.get_delay(), val)
+
+ def test_set_delay_s(self):
+ val = .05
+ self.o.set_delay_s(val)
+ assert_almost_equal (self.o.get_delay_s(), val)
+
+ def test_set_delay_ms(self):
+ val = 50.
+ self.o.set_delay_ms(val)
+ assert_almost_equal (self.o.get_delay_ms(), val)
+
+ def test_set_minioi(self):
+ val = 200
+ self.o.set_minioi(val)
+ assert_equal (self.o.get_minioi(), val)
+
+ def test_set_minioi_s(self):
+ val = 0.04
+ self.o.set_minioi_s(val)
+ assert_almost_equal (self.o.get_minioi_s(), val)
+
+ def test_set_minioi_ms(self):
+ val = 40.
+ self.o.set_minioi_ms(val)
+ assert_almost_equal (self.o.get_minioi_ms(), val)
+
+ def test_set_threshold(self):
+ val = 0.2
+ self.o.set_threshold(val)
+ assert_almost_equal (self.o.get_threshold(), val)
+
+class aubio_onset_96000(aubio_onset_params):
+ samplerate = 96000
+
+class aubio_onset_32000(aubio_onset_params):
+ samplerate = 32000
+
+class aubio_onset_8000(aubio_onset_params):
+ samplerate = 8000
+
+if __name__ == '__main__':
+ main()