def test_sine():
    for period in PERIODS:
        s = sequences.sine(1.0, period, CYCLES, period / 3)
        p = periodogram_peaks(s, thresh=1.0)
        assert len(p) == 1 and p[0][2] <= period and p[0][3] >= period
def test_square_wave():
    for period in PERIODS:
        s = sequences.impulses(period / 5, period, CYCLES, period / 3)
        p = periodogram_peaks(s, thresh=1.0)
        assert len(p) == 1 and p[0][2] <= period and p[0][3] >= period
def test_zeros():
    assert periodogram_peaks(np.zeros(1000)) == None
def test_sine():
    for period in PERIODS:
        s = sequences.sine(1.0, period, CYCLES, period // 3)
        p = periodogram_peaks(s, thresh=1.0)
        assert len(p) == 1 and p[0][2] <= period and p[0][3] >= period
def test_square_wave():
    for period in PERIODS:
        s = sequences.impulses(period // 5, period, CYCLES, period // 3)
        p = periodogram_peaks(s, thresh=1.0)
        assert len(p) == 1 and p[0][2] <= period and p[0][3] >= period
def test_zeros():
    assert periodogram_peaks(np.zeros(1000)) == None