diff options
| author | Jenkins <jenkins@review.openstack.org> | 2013-04-22 22:50:30 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2013-04-22 22:50:30 +0000 |
| commit | bfb8ca3e6e2bac3595db94de17c6b00caa5aaa4a (patch) | |
| tree | 06f83ac65ed9fb5d7ececaf171105724ebcdf0c1 | |
| parent | e521ff7e0480cf1ec686693cb2989e9d34dc7755 (diff) | |
| parent | 4ff5d3d4c3dade3932523d9ad6e6a84ff9ad172c (diff) | |
| download | nova-bfb8ca3e6e2bac3595db94de17c6b00caa5aaa4a.tar.gz nova-bfb8ca3e6e2bac3595db94de17c6b00caa5aaa4a.tar.xz nova-bfb8ca3e6e2bac3595db94de17c6b00caa5aaa4a.zip | |
Merge "Adds tests to xenapi.vm_utils's 'lookup' method"
| -rw-r--r-- | nova/tests/virt/xenapi/test_vm_utils.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/nova/tests/virt/xenapi/test_vm_utils.py b/nova/tests/virt/xenapi/test_vm_utils.py index d42ed7629..a021bc734 100644 --- a/nova/tests/virt/xenapi/test_vm_utils.py +++ b/nova/tests/virt/xenapi/test_vm_utils.py @@ -20,6 +20,7 @@ import contextlib import fixtures import mox +from nova import exception from nova import test from nova import utils from nova.virt.xenapi import vm_utils @@ -34,6 +35,35 @@ def _fake_noop(*args, **kwargs): return +class LookupTestCase(test.TestCase): + + def setUp(self): + super(LookupTestCase, self).setUp() + self.session = self.mox.CreateMockAnything('Fake Session') + self.name_label = 'my_vm' + + def _do_mock(self, result): + self.session.call_xenapi( + "VM.get_by_name_label", self.name_label).AndReturn(result) + self.mox.ReplayAll() + + def test_normal(self): + self._do_mock(['x']) + result = vm_utils.lookup(self.session, self.name_label) + self.assertEqual('x', result) + + def test_no_result(self): + self._do_mock([]) + result = vm_utils.lookup(self.session, self.name_label) + self.assertEqual(None, result) + + def test_too_many(self): + self._do_mock(['a', 'b']) + self.assertRaises(exception.InstanceExists, + vm_utils.lookup, + self.session, self.name_label) + + class GenerateConfigDriveTestCase(test.TestCase): def test_no_admin_pass(self): # This is here to avoid masking errors, it shouldn't be used normally |
