def test_one_step_tensor_delay_buffer(): """Test a buffer which delays the data one step""" shape = (3, 2, 1) creator = AllocatingCreator(device='cpu') buffer = create_delay_buffer(creator, True, shape) no_delay = create_delay_buffer(creator, False, shape) buffers = [buffer, no_delay] nans = creator.full(shape, FLOAT_NAN) a = creator.ones(shape) b = creator.ones(shape) * 2 c = creator.ones(shape) * 3 d = creator.ones(shape) * 4 _push(buffers, a) assert same(buffer.read(), nans) assert same(no_delay.read(), a) _push(buffers, b) assert same(buffer.read(), a) assert same(no_delay.read(), b) _push(buffers, c) assert same(buffer.read(), b) assert same(no_delay.read(), c) _push(buffers, d) assert same(buffer.read(), c) assert same(no_delay.read(), d)
def test_random_noise_unit(device: str): shape = [5, 5] TestRandomNoise.fix_random_seed() creator = AllocatingCreator(device) unit = RandomNoiseUnit(creator, shape) assert unit.output[0, 0] == 0 unit.step([]) assert 0 < unit.output[0, 0] < 1 big_number = 1000 added_tensor = creator.ones(shape) * big_number unit.step([added_tensor]) assert big_number < unit.output[0, 0] < big_number + 1