from easydict import EasyDict import pytest import numpy as np from dizoo.sokoban.envs.sokoban_env import SokobanEnv @pytest.mark.envtest class TestSokoban: def test_sokoban(self): env = SokobanEnv(EasyDict({'env_id': 'Sokoban-v0'})) env.reset() for i in range(100): action = np.random.randint(8) timestep = env.step(np.array(action)) print(timestep) print(timestep.obs.max()) assert isinstance(timestep.obs, np.ndarray) assert isinstance(timestep.done, bool) assert timestep.obs.shape == (160, 160, 3) print(timestep.info) assert timestep.reward.shape == (1, ) if timestep.done: env.reset() env.close()