コード例 #1
0
ファイル: test_pods.py プロジェクト: sydneypdx/maas
 def test_handles_driver_raising_NotImplementedError(self):
     fake_driver = MagicMock()
     fake_driver.name = factory.make_name("pod")
     fake_driver.discover.return_value = fail(NotImplementedError())
     self.patch(PodDriverRegistry, "get_item").return_value = fake_driver
     with ExpectedException(NotImplementedError):
         yield pods.discover_pod(fake_driver.name, {})
コード例 #2
0
 def test_handles_driver_resolving_to_None(self):
     fake_driver = MagicMock()
     fake_driver.name = factory.make_name("pod")
     fake_driver.discover.return_value = succeed(None)
     self.patch(PodDriverRegistry, "get_item").return_value = fake_driver
     with ExpectedException(
             exceptions.PodActionFail,
             re.escape("unable to discover pod information.")):
         yield pods.discover_pod(fake_driver.name, {})
コード例 #3
0
 def test_handles_driver_not_resolving_to_DiscoveredPod(self):
     fake_driver = MagicMock()
     fake_driver.name = factory.make_name("pod")
     fake_driver.discover.return_value = succeed({})
     self.patch(PodDriverRegistry, "get_item").return_value = fake_driver
     with ExpectedException(
             exceptions.PodActionFail,
             re.escape("bad pod driver '%s'; 'discover' returned "
                       "invalid result." % fake_driver.name)):
         yield pods.discover_pod(fake_driver.name, {})
コード例 #4
0
 def test_handles_driver_not_returning_Deferred(self):
     fake_driver = MagicMock()
     fake_driver.name = factory.make_name("pod")
     fake_driver.discover.return_value = None
     self.patch(PodDriverRegistry, "get_item").return_value = fake_driver
     with ExpectedException(
             exceptions.PodActionFail,
             re.escape("bad pod driver '%s'; 'discover' did not "
                       "return Deferred." % fake_driver.name)):
         yield pods.discover_pod(fake_driver.name, {})
コード例 #5
0
 def test_handles_driver_raising_any_Exception(self):
     fake_driver = MagicMock()
     fake_driver.name = factory.make_name("pod")
     fake_exception_type = factory.make_exception_type()
     fake_exception_msg = factory.make_name("error")
     fake_exception = fake_exception_type(fake_exception_msg)
     fake_driver.discover.return_value = fail(fake_exception)
     self.patch(PodDriverRegistry, "get_item").return_value = fake_driver
     with ExpectedException(
             exceptions.PodActionFail,
             re.escape("Failed talking to pod: " + fake_exception_msg)):
         yield pods.discover_pod(fake_driver.name, {})
コード例 #6
0
 def test_handles_driver_resolving_to_DiscoveredPod(self):
     fake_driver = MagicMock()
     fake_driver.name = factory.make_name("pod")
     discovered_pod = DiscoveredPod(
         architectures=['amd64/generic'],
         cores=random.randint(1, 8),
         cpu_speed=random.randint(1000, 3000),
         memory=random.randint(1024, 8192),
         local_storage=0,
         hints=DiscoveredPodHints(cores=random.randint(1, 8),
                                  cpu_speed=random.randint(1000, 2000),
                                  memory=random.randint(1024, 8192),
                                  local_storage=0),
         machines=[])
     fake_driver.discover.return_value = succeed(discovered_pod)
     self.patch(PodDriverRegistry, "get_item").return_value = fake_driver
     result = yield pods.discover_pod(fake_driver.name, {})
     self.assertEquals({
         "pod": discovered_pod,
     }, result)
コード例 #7
0
ファイル: test_pods.py プロジェクト: sydneypdx/maas
 def test_unknown_pod_raises_UnknownPodType(self):
     unknown_type = factory.make_name("unknown")
     with ExpectedException(exceptions.UnknownPodType):
         yield pods.discover_pod(unknown_type, {})