Commit 0d78759d authored by Yamada Hiroyuki's avatar Yamada Hiroyuki
Browse files

Fix: Test Ray only when installed

parent e4505091
Loading
Loading
Loading
Loading
+9 −12
Original line number Diff line number Diff line
@@ -7,26 +7,27 @@ from cpprb import MPReplayBuffer, MPPrioritizedReplayBuffer
import numpy as np


@unittest.skipUnless((3, 8) <= sys.version_info <= (3, 12),
                     "Support Ray only for Python 3.8-3.11")
has_ray: bool = False
try:
    import ray
    has_ray = True
except ImportError:
    pass


@unittest.skipUnless(has_ray, "Ray is not installed")
class TestRay(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        import ray

        cls.m = mp.get_context().Manager()
        ray.init()

    @classmethod
    def tearDownClass(cls):
        import ray

        ray.shutdown()
        cls.m.shutdown()

    def test_er(self):
        import ray

        rb = MPReplayBuffer(10, {"done": {}}, ctx=self.m, backend="SharedMemory")

        @ray.remote
@@ -57,8 +58,6 @@ class TestRay(unittest.TestCase):
        self.assertEqual(s["done"].shape[0], 2)

    def test_per(self):
        import ray

        rb = MPPrioritizedReplayBuffer(10, {"done": {}},
                                       ctx=self.m, backend="SharedMemory")

@@ -92,8 +91,6 @@ class TestRay(unittest.TestCase):
        self.assertEqual(s["done"].shape[0], 2)

    def test_with_alpha(self):
        import ray

        rb = MPPrioritizedReplayBuffer(10, {"done": {}}, alpha=0.2,
                                       ctx=self.m, backend="SharedMemory")