def test_filtering_stream_name(db, RE, hw): from ophyd import sim # one event stream RE.subscribe(db.insert) uid, = RE(count([hw.det], num=7), bc=1) h = db[uid] assert len(list(h.descriptors)) == 1 assert list(h.stream_names) == ['primary'] assert len(list(db.get_events(h, stream_name='primary'))) == 7 assert len(db.get_table(h, stream_name='primary')) == 7 assert len(list(db.get_events(h, stream_name='primary', fields=['det']))) == 7 assert len(db.get_table(h, stream_name='primary', fields=['det'])) == 7 assert len(list(h.documents(stream_name='primary'))) == 7 + 3 assert len(h.table(stream_name='primary')) == 7 assert len(list(h.documents(stream_name='primary', fields=['det']))) == 7 + 3 assert len(h.table(stream_name='primary', fields=['det'])) == 7 assert len(db.get_table(h, stream_name='primary', fields=['det', 'bc'])) == 7 # two event streams: 'primary' and 'd_monitor' d = sim.SynPeriodicSignal(name='d', period=.5) uid, = RE(monitor_during_wrapper(count([hw.det], num=7, delay=0.1), [d])) h = db[uid] assert len(list(h.descriptors)) == 2 assert set(h.stream_names) == set(['primary', 'd_monitor']) assert len(list(db.get_events(h, stream_name='primary'))) == 7 assert len(list(h.documents(stream_name='primary'))) == 7 + 3 assert len(db.get_table(h, stream_name='primary')) == 7 assert len(db.get_table(h)) == 7 # 'primary' by default assert len(h.table(stream_name='primary')) == 7 assert len(h.table()) == 7 # 'primary' by default
def test_order(db, RE, hw): from ophyd import sim RE.subscribe(db.insert) d = sim.SynPeriodicSignal(name='d', period=.5) uid, = RE(monitor_during_wrapper(count([hw.det], num=7, delay=0.1), [d])) t0 = None for name, doc in db[uid].documents(): # TODO: include datums in here at some point if name in ['event']: t1 = doc['time'] if t0: assert t1 > t0 t0 = t1