diff options
| author | Jenkins <jenkins@review.openstack.org> | 2012-11-12 18:11:51 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2012-11-12 18:11:51 +0000 |
| commit | 8bb97c97b99539b7d8b03e5abeff648a81da7794 (patch) | |
| tree | 8d6ada9dd68e3d9a974b4191d1789a13f81d60f6 /nova/tests | |
| parent | e3dfde7148a1b842804ff6f74655dfce6785bab7 (diff) | |
| parent | a51d60f2ba557926f982d7f6c735ed12e5deb5e9 (diff) | |
Merge "Move host aggregate operations to VirtAPI"
Diffstat (limited to 'nova/tests')
| -rw-r--r-- | nova/tests/test_xenapi.py | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/nova/tests/test_xenapi.py b/nova/tests/test_xenapi.py index 7e08c5099..b8add8c24 100644 --- a/nova/tests/test_xenapi.py +++ b/nova/tests/test_xenapi.py @@ -897,7 +897,7 @@ class XenAPIVMTestCase(stubs.XenAPITestBase): self.assertRaises(xenapi_fake.Failure, conn.reboot, instance, None, "SOFT") - def test_maintenance_mode(self): + def _test_maintenance_mode(self, find_host, find_aggregate): real_call_xenapi = self.conn._session.call_xenapi instance = self._create_instance(spawn=True) api_calls = {} @@ -911,9 +911,19 @@ class XenAPIVMTestCase(stubs.XenAPITestBase): return real_call_xenapi(method, *args) self.stubs.Set(self.conn._session, 'call_xenapi', fake_call_xenapi) - # Always find the 'bar' destination host + def fake_aggregate_get(context, host, key): + if find_aggregate: + return [{'fake': 'aggregate'}] + else: + return [] + self.stubs.Set(self.conn.virtapi, 'aggregate_get_by_host', + fake_aggregate_get) + def fake_host_find(context, session, src, dst): - return 'bar' + if find_host: + return 'bar' + else: + raise exception.NoValidHost("I saw this one coming...") self.stubs.Set(host, '_host_find', fake_host_find) result = self.conn.host_maintenance_mode('bar', 'on_maintenance') @@ -928,6 +938,17 @@ class XenAPIVMTestCase(stubs.XenAPITestBase): self.assertTrue(instance['vm_state'], vm_states.ACTIVE) self.assertTrue(instance['task_state'], task_states.MIGRATING) + def test_maintenance_mode(self): + self._test_maintenance_mode(True, True) + + def test_maintenance_mode_no_host(self): + self.assertRaises(exception.NoValidHost, + self._test_maintenance_mode, False, True) + + def test_maintenance_mode_no_aggregate(self): + self.assertRaises(exception.NotFound, + self._test_maintenance_mode, True, False) + def _create_instance(self, instance_id=1, spawn=True): """Creates and spawns a test instance.""" instance_values = { |
