def test_decoder_1d_ulong(self): data = numpy.random.randint(1, high=100, size=[10, ], dtype='uint64') ts = 1234 source = 'test_1d_histo' buff = create_hs00(data=data, timestamp=ts, source=source) histogram = self.decoder.decode(buff) assert histogram is not None assert (histogram == data).all()
def test_decoder_1d_float(self): data = numpy.random.random(size=[10, ]) ts = 1234 source = 'test_1d_histo' buff = create_hs00(data=data.astype('float32'), timestamp=ts, source=source) histogram = self.decoder.decode(buff) assert histogram is not None assert (histogram == data).all()
def test_1d_encoded_buffer(self): data = numpy.random.randint(1, high=100, size=[10, ], dtype='uint32') ts = 1234 source = 'test_1d_histo' buff = create_hs00(data=data, timestamp=ts, source=source) histogram = EventHistogram.EventHistogram.GetRootAsEventHistogram( buff, 0) assert histogram.Source().decode('utf-8') == source assert histogram.Timestamp() == ts assert histogram.DataType() == Array.Array.ArrayUInt
def test_decoder_1d_uint(self): data = numpy.random.randint(1, high=100, size=[10, ], dtype='uint32') ts = 1234 src = 'test_1d_histo' buff = create_hs00(data=data, timestamp=ts, source=src) histogram = self.decoder.decode(buff) assert histogram is not None value, timestamp, source = histogram assert (value == data).all() assert timestamp == ts assert source == src
def test_consume_serialized_messages(self): """ Creates a set of (timestamp, flatbuffer image array) and feed them into the detector. Test that `doReadArray` returns the last image, unbuffered. """ raw = {} timestamps = numpy.random.randint(1e9, high=8e9, size=10) for ts in timestamps: raw[ts] = numpy.random.randint(1, high=100, size=[ 5, 5, ], dtype='uint32') messages = {} for ts, data in raw.items(): messages[ts] = create_hs00(data=numpy.array(data), timestamp=ts, source='test_histo') self.image_channel.new_messages_callback(messages) assert (raw[max(timestamps)] == self.detector.readArrays(LIVE)).all()