2016-05-27 12:16:35 -07:00
|
|
|
from gym.utils.closer import Closer
|
2016-05-16 23:11:50 -07:00
|
|
|
|
2021-07-29 02:26:34 +02:00
|
|
|
|
2022-01-11 18:12:05 +01:00
|
|
|
class Closeable:
|
2016-05-16 23:11:50 -07:00
|
|
|
close_called = False
|
2021-07-29 02:26:34 +02:00
|
|
|
|
2016-05-16 23:11:50 -07:00
|
|
|
def close(self):
|
|
|
|
self.close_called = True
|
|
|
|
|
2021-07-29 02:26:34 +02:00
|
|
|
|
2016-05-16 23:11:50 -07:00
|
|
|
def test_register_unregister():
|
2016-05-27 12:16:35 -07:00
|
|
|
registry = Closer(atexit_register=False)
|
|
|
|
c1 = Closeable()
|
|
|
|
c2 = Closeable()
|
2016-05-16 23:11:50 -07:00
|
|
|
|
|
|
|
assert not c1.close_called
|
|
|
|
assert not c2.close_called
|
|
|
|
registry.register(c1)
|
|
|
|
id2 = registry.register(c2)
|
|
|
|
|
|
|
|
registry.unregister(id2)
|
|
|
|
registry.close()
|
|
|
|
assert c1.close_called
|
|
|
|
assert not c2.close_called
|