Exemplo n.º 1
0
    def test_no_factory_method_found(self):
        factory = RendezvousHandlerFactory()
        rdzv_params = RendezvousParameters(
            backend="mock", endpoint="", run_id="foobar", min_nodes=1, max_nodes=2
        )

        with self.assertRaises(ValueError):
            factory.create_rdzv_handler(rdzv_params)
Exemplo n.º 2
0
    def test_create_rdzv_handler(self):
        rdzv_params = RendezvousParameters(
            backend="mock", endpoint="", run_id="foobar", min_nodes=1, max_nodes=2
        )

        factory = RendezvousHandlerFactory()
        factory.register("mock", create_mock_rdzv_handler)
        mock_rdzv_handler = factory.create_rdzv_handler(rdzv_params)
        self.assertTrue(isinstance(mock_rdzv_handler, MockRendezvousHandler))
Exemplo n.º 3
0
 def test_double_registration(self):
     factory = RendezvousHandlerFactory()
     factory.register("mock", create_mock_rdzv_handler)
     with self.assertRaises(ValueError):
         factory.register("mock", create_mock_rdzv_handler)
Exemplo n.º 4
0
def get_rendezvous_handler(rdzv_params: RendezvousParameters) -> RendezvousHandler:
    factory = RendezvousHandlerFactory()
    factory.register("etcd", etcd_rdzv.create_rdzv_handler)
    return factory.create_rdzv_handler(rdzv_params)