source: tests/python/examples/aubioonset.py @ d5e846c

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5pitchshiftsamplertimestretchyinfft+
Last change on this file since d5e846c was ca55954, checked in by Paul Brossier <piem@piem.org>, 15 years ago

tests/python/examples/aubioonset.py: do not check onset is actually detected with all functions

  • Property mode set to 100644
File size: 1.4 KB
RevLine 
[ca55954]1from template import program_test_case
[031b1f9]2
[f1771f9]3class aubioonset_unit(program_test_case):
[031b1f9]4 
5  import os.path
6  filename = os.path.join('..','..','sounds','woodblock.aiff')
7  progname = os.path.join('..','..','examples','aubioonset')
8
9  def test_aubioonset_with_inf_silence(self):
10    """ test aubioonset with -s 0  """
11    self.command += " -s 0" 
12    self.getOutput()
13    assert len(self.output) == 0, self.output
14
[ca55954]15class aubioonset_unit_finds_onset(aubioonset_unit):
16
17  def test_aubioonset(self):
18    """ test aubioonset with default parameters """
19    self.getOutput()
20    assert len(str(self.output)) != 0, "no output produced with command:\n" \
21      + self.command
22
[031b1f9]23  def test_aubioonset_with_no_silence(self):
24    """ test aubioonset with -s -100 """ 
25    self.command += " -s -100 " 
26    self.getOutput()
27    # only one onset in woodblock.aiff
[f1771f9]28    self.assertNotEqual(0, len(str(self.output)), \
29      "no output produced with command:\n" + self.command)
30    self.assertEqual(1, len(self.output.split('\n')) )
[031b1f9]31    # onset should be at 0.00000
[f1771f9]32    self.assertEqual(0, float(self.output.strip()))
33
34list_of_onset_modes = ["energy", "specdiff", "hfc", "complex", "phase", \
35                      "kl", "mkl", "specflux"]
[031b1f9]36
[f1771f9]37for name in list_of_onset_modes:
38  exec("class aubioonset_"+name+"_unit(aubioonset_unit):\n\
[100f950]39  options = \" -O "+name+" \"")
[9f9f63f]40
[100f950]41if __name__ == '__main__': unittest.main()
Note: See TracBrowser for help on using the repository browser.