shithub: aubio

Download patch

ref: d05c54fad5903415210aa6a594ba7eb0d3455ae7
parent: 16e0f16201dfb010f6cc77f945b94fbd8c3534c9
author: Paul Brossier <piem@piem.org>
date: Fri Nov 30 13:26:04 EST 2007

add draft test for hist.py

--- /dev/null
+++ b/tests/python/hist.py
@@ -1,0 +1,51 @@
+import unittest
+
+from template import aubio_unit_template
+from aubio.aubiowrapper import *
+
+buf_size = 2048
+channels = 1
+flow = 0.
+fhig = 100.
+
+nelems = 1000
+
+class hist_unit(aubio_unit_template):
+
+  def setUp(self):
+    self.o = new_aubio_hist(flow, fhig, nelems, channels)
+
+  def tearDown(self):
+    del_aubio_hist(self.o)
+
+  def test_hist(self):
+    """ create and delete hist """
+    pass
+
+  def test_hist_zeroes(self):
+    """ test hist on zeroes """
+    input = new_fvec(buf_size, channels)
+    aubio_hist_do_notnull(self.o, input)
+    aubio_hist_weight(self.o)
+    self.assertEqual(0., aubio_hist_mean(self.o))
+    del_fvec(input)
+
+  def test_hist_impulse(self):
+    """ test hist on impulse """
+    input = new_fvec(buf_size, channels)
+    constant = fhig - 1. 
+    fvec_write_sample(input,constant,0,0)
+    aubio_hist_do_notnull(self.o, input)
+    self.assertCloseEnough(1./nelems, aubio_hist_mean(self.o))
+    del_fvec(input)
+
+  def test_hist_impulse2(self):
+    """ test hist on impulse """
+    input = new_fvec(buf_size, channels)
+    constant = fhig + 1. 
+    fvec_write_sample(input,constant,0,0)
+    aubio_hist_do_notnull(self.o, input)
+    self.assertCloseEnough(1./nelems, aubio_hist_mean(self.o))
+    del_fvec(input)
+
+if __name__ == '__main__': unittest.main()