Files
Gymnasium/tests/envs/utils_envs.py

50 lines
1.4 KiB
Python
Raw Normal View History

2022-09-08 10:10:07 +01:00
import gymnasium
2022-06-23 13:54:50 +01:00
2022-09-08 10:10:07 +01:00
class RegisterDuringMakeEnv(gymnasium.Env):
2022-06-23 13:54:50 +01:00
"""Used in `test_registration.py` to check if `env.make` can import and register an env"""
def __init__(self):
2022-09-08 10:10:07 +01:00
self.action_space = gymnasium.spaces.Discrete(1)
self.observation_space = gymnasium.spaces.Discrete(1)
2022-06-23 13:54:50 +01:00
2022-09-08 10:10:07 +01:00
class ArgumentEnv(gymnasium.Env):
observation_space = gymnasium.spaces.Box(low=-1, high=1, shape=(1,))
action_space = gymnasium.spaces.Box(low=-1, high=1, shape=(1,))
2022-06-23 13:54:50 +01:00
def __init__(self, arg1, arg2, arg3):
self.arg1 = arg1
self.arg2 = arg2
self.arg3 = arg3
# Environments to test render_mode
2022-09-08 10:10:07 +01:00
class NoHuman(gymnasium.Env):
"""Environment that does not have human-rendering."""
metadata = {"render_modes": ["rgb_array_list"], "render_fps": 4}
def __init__(self, render_mode=None):
assert render_mode in self.metadata["render_modes"]
self.render_mode = render_mode
2022-09-08 10:10:07 +01:00
class NoHumanOldAPI(gymnasium.Env):
"""Environment that does not have human-rendering."""
metadata = {"render_modes": ["rgb_array_list"], "render_fps": 4}
def __init__(self):
pass
2022-09-08 10:10:07 +01:00
class NoHumanNoRGB(gymnasium.Env):
"""Environment that has neither human- nor rgb-rendering"""
metadata = {"render_modes": ["ascii"], "render_fps": 4}
def __init__(self, render_mode=None):
assert render_mode in self.metadata["render_modes"]
self.render_mode = render_mode