Changeset fb434c4


Ignore:
Timestamp:
Apr 30, 2016, 7:19:39 AM (4 years ago)
Author:
Paul Brossier <piem@piem.org>
Branches:
feature/autosink, feature/constantq, feature/pitchshift, feature/pydocstrings, feature/timestretch, master, pitchshift, sampler, timestretch, yinfft+
Children:
43de50d
Parents:
7498e48
Message:

python/tests/test_phasevoc.py: cleanup, start using nose2

File:
1 edited

Legend:

Unmodified
Added
Removed
  • python/tests/test_phasevoc.py

    r7498e48 rfb434c4  
    55from numpy import array, shape
    66from numpy.random import random
     7from nose2.tools import params
    78import numpy as np
    89
    9 max_sq_error = 1.e-12
     10if float_type == 'float32':
     11    max_sq_error = 1.e-12
     12else:
     13    max_sq_error = 1.e-29
    1014
    1115def create_sine(hop_s, freq, samplerate):
    1216    t = np.arange(hop_s).astype(float_type)
    13     return np.sin( 2. * np.pi * t * freq / samplerate)
     17    return np.sin( 2. * np.pi * freq * t / float(samplerate))
    1418
    1519def create_noise(hop_s):
     
    4246            s = f(t)
    4347            r = f.rdo(s)
    44             assert_equal ( array(t), 0)
    45             assert_equal ( s.norm, 0)
    46             assert_equal ( s.phas, 0)
    47             assert_equal ( r, 0)
     48            assert_equal ( t, 0.)
     49            assert_equal ( s.norm, 0.)
     50            assert_equal ( s.phas, 0.)
     51            assert_equal ( r, 0.)
    4852
    4953    def test_resynth_8_steps_sine(self):
     
    9296        self.reconstruction(sigin, hop_s, ratio)
    9397
     98    @params(
     99            ( 256, 8),
     100            ( 256, 4),
     101            ( 256, 2),
     102            ( 512, 8),
     103            ( 512, 4),
     104            ( 512, 2),
     105            (1024, 8),
     106            (1024, 4),
     107            (1024, 2),
     108            (2048, 8),
     109            (2048, 4),
     110            (2048, 2),
     111            (4096, 8),
     112            (4096, 4),
     113            (4096, 2),
     114            (8192, 8),
     115            (8192, 4),
     116            (8192, 2),
     117            )
     118    def test_resynth_steps_noise(self, hop_s, ratio):
     119        """ check the resynthesis of a random signal is correct """
     120        sigin = create_noise(hop_s)
     121        self.reconstruction(sigin, hop_s, ratio)
     122
     123    @params(
     124            (44100,  256, 8,   441),
     125            (44100,  256, 4,  1203),
     126            (44100,  256, 2,  3045),
     127            (44100,  512, 8,   445),
     128            (44100,  512, 4,   445),
     129            (44100,  512, 2,   445),
     130            (44100, 1024, 8,   445),
     131            (44100, 1024, 4,   445),
     132            (44100, 1024, 2,   445),
     133            ( 8000, 1024, 2,   445),
     134            (22050, 1024, 2,   445),
     135            (22050,  256, 8,   445),
     136            (96000, 1024, 8, 47000),
     137            (96000, 1024, 8,    20),
     138            )
     139    def test_resynth_steps_sine(self, samplerate, hop_s, ratio, freq):
     140        """ check the resynthesis of a sine is correct """
     141        sigin = create_sine(hop_s, freq, samplerate)
     142        self.reconstruction(sigin, hop_s, ratio)
     143
    94144    def reconstruction(self, sigin, hop_s, ratio):
    95145        buf_s = hop_s * ratio
     
    105155
    106156if __name__ == '__main__':
    107   from unittest import main
    108   main()
     157    from nose2 import main
     158    main()
    109159
Note: See TracChangeset for help on using the changeset viewer.