mirror of
https://github.com/Farama-Foundation/Gymnasium.git
synced 2025-08-17 20:39:12 +00:00
Fixed all environment close issues in testing (#3020)
This commit is contained in:
@@ -375,7 +375,6 @@ class AcrobotEnv(core.Env):
|
||||
np.array(pygame.surfarray.pixels3d(self.screen)), axes=(1, 0, 2)
|
||||
)
|
||||
|
||||
|
||||
def close(self):
|
||||
if self.screen is not None:
|
||||
import pygame
|
||||
|
@@ -221,6 +221,10 @@ class VideoRecorder: # TODO: remove with gym 1.0
|
||||
if not self.enabled or self._closed:
|
||||
return
|
||||
|
||||
# First close the environment
|
||||
self.env.close()
|
||||
|
||||
# Close the encoder
|
||||
if self.encoder:
|
||||
logger.debug("Closing video encoder: path=%s", self.path)
|
||||
self.encoder.close()
|
||||
|
@@ -21,10 +21,12 @@ def test_human_rendering():
|
||||
|
||||
env.close()
|
||||
|
||||
env = gym.make("CartPole-v1", render_mode="human")
|
||||
with pytest.raises(
|
||||
AssertionError,
|
||||
match=re.escape(
|
||||
"Expected env.render_mode to be one of 'rgb_array' or 'single_rgb_array' but got 'human'"
|
||||
),
|
||||
):
|
||||
HumanRendering(gym.make("CartPole-v1", render_mode="human"))
|
||||
HumanRendering(env)
|
||||
env.close()
|
||||
|
@@ -8,7 +8,7 @@ import gym
|
||||
from gym.wrappers.monitoring.video_recorder import VideoRecorder
|
||||
|
||||
|
||||
class BrokenRecordableEnv:
|
||||
class BrokenRecordableEnv(gym.Env):
|
||||
metadata = {"render_modes": ["rgb_array"]}
|
||||
|
||||
def __init__(self, render_mode="rgb_array"):
|
||||
@@ -18,7 +18,7 @@ class BrokenRecordableEnv:
|
||||
pass
|
||||
|
||||
|
||||
class UnrecordableEnv:
|
||||
class UnrecordableEnv(gym.Env):
|
||||
metadata = {"render_modes": [None]}
|
||||
|
||||
def __init__(self, render_mode=None):
|
||||
|
Reference in New Issue
Block a user