Esempio n. 1
0
def test_gc_random():
    from weakref import WeakValueDictionary
    w = WeakValueDictionary()
    a = sd.Random(freq='5ms', interval='100ms')
    w[1] = a
    yield gen.sleep(0.1)
    a = sd.Random(freq='5ms', interval='100ms')
    w[2] = a
    yield gen.sleep(0.1)
    a = sd.Random(freq='5ms', interval='100ms')
    w[3] = a
    yield gen.sleep(0.1)
    assert len(w) == 1
Esempio n. 2
0
def test_gc():
    sdf = sd.Random(freq='5ms', interval='100ms')
    a = StreamingDataFrame({
        'volatility': sdf.x.rolling('100ms').var(),
        'sub': sdf.x - sdf.x.rolling('100ms').mean()
    })
    n = len(sdf.stream.downstreams)
    yield gen.sleep(0.1)
    a = StreamingDataFrame({
        'volatility': sdf.x.rolling('100ms').var(),
        'sub': sdf.x - sdf.x.rolling('100ms').mean()
    })
    yield gen.sleep(0.1)
    a = StreamingDataFrame({
        'volatility': sdf.x.rolling('100ms').var(),
        'sub': sdf.x - sdf.x.rolling('100ms').mean()
    })
    yield gen.sleep(0.1)
    a = StreamingDataFrame({
        'volatility': sdf.x.rolling('100ms').var(),
        'sub': sdf.x - sdf.x.rolling('100ms').mean()
    })

    assert len(sdf.stream.downstreams) == n
    del a
    import gc
    gc.collect()
    assert len(sdf.stream.downstreams) == 0
Esempio n. 3
0
def test_random_source():
    source = sd.Random(freq='10ms', interval='100ms')
    L = source.stream.sink_to_list()
    yield gen.sleep(0.5)
    assert 2 < len(L) < 8
    assert all(2 < len(df) < 25 for df in L)

    source.x
    source.rolling('10s')
Esempio n. 4
0
def test_plot():
    pytest.importorskip('bokeh')
    sdf = sd.Random(freq='10ms', interval='50ms')
    result = sdf[['x', 'y']].plot()

    cds = result['cds']

    assert set(cds.data) == {'x', 'y', 'index'}
    assert not len(cds.data['x'])

    yield gen.sleep(0.130)
    assert len(cds.data['x'])
    assert len(set(map(len, cds.data.values()))) == 1

    assert set(sdf.x.plot()['cds'].data) == {'x', 'index'}
Esempio n. 5
0
def test_repartition_interval(n):
    source = sd.Random(freq='10ms', interval='100ms')
    L = source.stream.sink_to_list()
    L2 = source.repartition(interval='150ms').stream.sink_to_list()

    yield gen.sleep(0.400)

    assert L2

    for df in L2:
        assert df.index.max() - df.index.min() <= pd.Timedelta('150ms')

    expected = pd.concat(L).iloc[:sum(map(len, L2))]

    assert_eq(pd.concat(L2), expected)
Esempio n. 6
0
def test_random_source(client):
    n = len(client.cluster.scheduler.tasks)
    source = sd.Random(freq='1ms', interval='10ms', dask=True)
    L = source.x.stream.gather().sink_to_list()
    sleep(0.20)
    assert len(client.cluster.scheduler.tasks) < n + 10
Esempio n. 7
0
def test_random_source(loop):
    with Client(processes=False, diagnostics_port=False, loop=loop) as client:
        source = sd.Random(freq='1ms', interval='10ms', dask=True)
        L = source.x.stream.gather().sink_to_list()
        sleep(0.20)
        assert len(client.cluster.scheduler.tasks) < 10