def test_bqp_asymm(monkeypatch, lt_ctx, default_raw_asymm): pytest.importorskip("bqplot") udfs = [SumSigUDF(), SumUDF()] monkeypatch.setattr(IPython.display, 'display', mock.MagicMock()) monkeypatch.setattr(lt_ctx, 'plot_class', BQLive2DPlot) lt_ctx.run_udf(dataset=default_raw_asymm, udf=udfs, plots=True) IPython.display.display.assert_called()
def test_empty(monkeypatch, lt_ctx, default_raw_asymm): default_raw = default_raw_asymm pytest.importorskip("bqplot") udf = SumSigUDF() monkeypatch.setattr(IPython.display, 'display', mock.MagicMock()) monkeypatch.setattr(lt_ctx, 'plot_class', BQLive2DPlot) def extract(udf_result, damage): return udf_result['intensity'].data, np.zeros_like(damage) plot = BQLive2DPlot(dataset=default_raw, udf=udf, channel=extract) lt_ctx.run_udf(dataset=default_raw, udf=udf, plots=[plot])
def test_negative_sync_offset(lt_ctx, raw_dataset_8x8x8x8, raw_data_8x8x8x8_path, io_backend): udf = SumSigUDF() sync_offset = -2 ds_with_offset = RawFileDataSet( path=raw_data_8x8x8x8_path, nav_shape=(8, 8), sig_shape=(8, 8), dtype="float32", enable_direct=False, sync_offset=sync_offset, io_backend=io_backend, ) ds_with_offset.set_num_cores(4) ds_with_offset = ds_with_offset.initialize(lt_ctx.executor) ds_with_offset.check_valid() p0 = next(ds_with_offset.get_partitions()) assert p0._start_frame == -2 assert p0.slice.origin == (0, 0, 0) tileshape = Shape((4, ) + tuple(ds_with_offset.shape.sig), sig_dims=ds_with_offset.shape.sig.dims) tiling_scheme = TilingScheme.make_for_shape( tileshape=tileshape, dataset_shape=ds_with_offset.shape, ) t0 = next(p0.get_tiles(tiling_scheme)) assert tuple(t0.tile_slice.origin) == (2, 0, 0) for p in ds_with_offset.get_partitions(): for t in p.get_tiles(tiling_scheme=tiling_scheme): pass assert p.slice.origin == (48, 0, 0) assert p.slice.shape[0] == 16 result = lt_ctx.run_udf(dataset=raw_dataset_8x8x8x8, udf=udf) result = result['intensity'].raw_data[:raw_dataset_8x8x8x8._meta. image_count - abs(sync_offset)] result_with_offset = lt_ctx.run_udf(dataset=ds_with_offset, udf=udf) result_with_offset = result_with_offset['intensity'].raw_data[ abs(sync_offset):] assert np.allclose(result, result_with_offset)