mirror of
https://github.com/Farama-Foundation/Gymnasium.git
synced 2025-08-01 06:07:08 +00:00
remove double-wrap warning (#1061)
* remove double-wrap warning * remove double-wrap tests
This commit is contained in:
11
gym/core.py
11
gym/core.py
@@ -244,22 +244,11 @@ class Wrapper(Env):
|
||||
self.observation_space = self.env.observation_space
|
||||
self.reward_range = self.env.reward_range
|
||||
self.metadata = self.env.metadata
|
||||
self._warn_double_wrap()
|
||||
|
||||
@classmethod
|
||||
def class_name(cls):
|
||||
return cls.__name__
|
||||
|
||||
def _warn_double_wrap(self):
|
||||
env = self.env
|
||||
while True:
|
||||
if isinstance(env, Wrapper):
|
||||
if env.class_name() == self.class_name():
|
||||
raise error.DoubleWrapperError("Attempted to double wrap with Wrapper: {}".format(self.__class__.__name__))
|
||||
env = env.env
|
||||
else:
|
||||
break
|
||||
|
||||
def step(self, action):
|
||||
if hasattr(self, "_step"):
|
||||
deprecated_warn_once("%s doesn't implement 'step' method, but it implements deprecated '_step' method." % type(self))
|
||||
|
@@ -1,21 +0,0 @@
|
||||
import gym
|
||||
from gym import error
|
||||
from gym import wrappers
|
||||
import tempfile
|
||||
import shutil
|
||||
|
||||
|
||||
def test_no_double_wrapping():
|
||||
temp = tempfile.mkdtemp()
|
||||
try:
|
||||
env = gym.make("FrozenLake-v0")
|
||||
env = wrappers.Monitor(env, temp)
|
||||
try:
|
||||
env = wrappers.Monitor(env, temp)
|
||||
except error.DoubleWrapperError:
|
||||
pass
|
||||
else:
|
||||
assert False, "Should not allow double wrapping"
|
||||
env.close()
|
||||
finally:
|
||||
shutil.rmtree(temp)
|
Reference in New Issue
Block a user