summaryrefslogtreecommitdiff
path: root/nova/tests
diff options
context:
space:
mode:
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/unit/virt/vmwareapi/fake.py6
-rw-r--r--nova/tests/unit/virt/vmwareapi/test_driver_api.py46
-rw-r--r--nova/tests/unit/virt/vmwareapi/test_ds_util.py197
-rw-r--r--nova/tests/unit/virt/vmwareapi/test_ds_util_datastore_selection.py13
-rw-r--r--nova/tests/unit/virt/vmwareapi/test_imagecache.py21
-rw-r--r--nova/tests/unit/virt/vmwareapi/test_vm_util.py4
-rw-r--r--nova/tests/unit/virt/vmwareapi/test_vmops.py23
7 files changed, 67 insertions, 243 deletions
diff --git a/nova/tests/unit/virt/vmwareapi/fake.py b/nova/tests/unit/virt/vmwareapi/fake.py
index c2ded60a59..1e22ec97e7 100644
--- a/nova/tests/unit/virt/vmwareapi/fake.py
+++ b/nova/tests/unit/virt/vmwareapi/fake.py
@@ -26,10 +26,10 @@ from oslo_serialization import jsonutils
from oslo_utils import units
from oslo_utils import uuidutils
from oslo_vmware import exceptions as vexc
+from oslo_vmware.objects import datastore as ds_obj
from nova import exception
from nova.virt.vmwareapi import constants
-from nova.virt.vmwareapi import ds_util
_CLASSES = ['Datacenter', 'Datastore', 'ResourcePool', 'VirtualMachine',
'Network', 'HostSystem', 'HostNetworkSystem', 'Task', 'session',
@@ -967,9 +967,9 @@ def create_vm(uuid=None, name=None,
devices = []
if vmPathName is None:
- vm_path = ds_util.DatastorePath(_db_content['Datastore'].values()[0])
+ vm_path = ds_obj.DatastorePath(_db_content['Datastore'].values()[0])
else:
- vm_path = ds_util.DatastorePath.parse(vmPathName)
+ vm_path = ds_obj.DatastorePath.parse(vmPathName)
if res_pool_ref is None:
res_pool_ref = _db_content['ResourcePool'].keys()[0]
diff --git a/nova/tests/unit/virt/vmwareapi/test_driver_api.py b/nova/tests/unit/virt/vmwareapi/test_driver_api.py
index 09bae43caf..aabb1103e9 100644
--- a/nova/tests/unit/virt/vmwareapi/test_driver_api.py
+++ b/nova/tests/unit/virt/vmwareapi/test_driver_api.py
@@ -32,6 +32,7 @@ from oslo_utils import timeutils
from oslo_utils import units
from oslo_utils import uuidutils
from oslo_vmware import exceptions as vexc
+from oslo_vmware.objects import datastore as ds_obj
from oslo_vmware import pbm
from oslo_vmware import vim
from oslo_vmware import vim_util as oslo_vim_util
@@ -58,7 +59,6 @@ from nova import utils as nova_utils
from nova.virt import driver as v_driver
from nova.virt.vmwareapi import constants
from nova.virt.vmwareapi import driver
-from nova.virt.vmwareapi import ds_util
from nova.virt.vmwareapi import error_util
from nova.virt.vmwareapi import imagecache
from nova.virt.vmwareapi import images
@@ -521,7 +521,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
self.assertEqual(len(uuids), 0)
def _cached_files_exist(self, exists=True):
- cache = ds_util.DatastorePath(self.ds, 'vmware_base',
+ cache = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.vmdk' % self.fake_image_uuid)
if exists:
@@ -541,7 +541,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
mock_from_image.return_value = img_props
self._create_vm()
- path = ds_util.DatastorePath(self.ds, self.uuid, '%s.vmdk' % self.uuid)
+ path = ds_obj.DatastorePath(self.ds, self.uuid, '%s.vmdk' % self.uuid)
vmwareapi_fake.assertPathExists(self, str(path))
self._cached_files_exist()
@@ -559,10 +559,10 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
mock_from_image.return_value = img_props
self._create_vm()
- path = ds_util.DatastorePath(self.ds, 'vmware_base',
+ path = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.vmdk' % self.fake_image_uuid)
- root = ds_util.DatastorePath(self.ds, 'vmware_base',
+ root = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.80.vmdk' % self.fake_image_uuid)
vmwareapi_fake.assertPathExists(self, str(path))
@@ -571,23 +571,23 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
def _iso_disk_type_created(self, instance_type='m1.large'):
self.image['disk_format'] = 'iso'
self._create_vm(instance_type=instance_type)
- path = ds_util.DatastorePath(self.ds, 'vmware_base',
+ path = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.iso' % self.fake_image_uuid)
vmwareapi_fake.assertPathExists(self, str(path))
def test_iso_disk_type_created(self):
self._iso_disk_type_created()
- path = ds_util.DatastorePath(self.ds, self.uuid, '%s.vmdk' % self.uuid)
+ path = ds_obj.DatastorePath(self.ds, self.uuid, '%s.vmdk' % self.uuid)
vmwareapi_fake.assertPathExists(self, str(path))
def test_iso_disk_type_created_with_root_gb_0(self):
self._iso_disk_type_created(instance_type='m1.micro')
- path = ds_util.DatastorePath(self.ds, self.uuid, '%s.vmdk' % self.uuid)
+ path = ds_obj.DatastorePath(self.ds, self.uuid, '%s.vmdk' % self.uuid)
vmwareapi_fake.assertPathNotExists(self, str(path))
def test_iso_disk_cdrom_attach(self):
- iso_path = ds_util.DatastorePath(self.ds, 'vmware_base',
+ iso_path = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.iso' % self.fake_image_uuid)
@@ -614,10 +614,10 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
self.flags(force_config_drive=True)
iso_path = [
- ds_util.DatastorePath(self.ds, 'vmware_base',
+ ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.iso' % self.fake_image_uuid),
- ds_util.DatastorePath(self.ds, 'fake-config-drive')]
+ ds_obj.DatastorePath(self.ds, 'fake-config-drive')]
self.iso_index = 0
def fake_create_config_drive(instance, injected_files, password,
@@ -640,7 +640,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
def test_ephemeral_disk_attach(self):
self._create_vm(ephemeral=50)
- path = ds_util.DatastorePath(self.ds, self.uuid,
+ path = ds_obj.DatastorePath(self.ds, self.uuid,
'ephemeral_0.vmdk')
vmwareapi_fake.assertPathExists(self, str(path))
@@ -653,24 +653,24 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
'size': 25}]
bdi = {'ephemerals': ephemerals}
self._create_vm(bdi=bdi, ephemeral=50)
- path = ds_util.DatastorePath(self.ds, self.uuid,
+ path = ds_obj.DatastorePath(self.ds, self.uuid,
'ephemeral_0.vmdk')
vmwareapi_fake.assertPathExists(self, str(path))
- path = ds_util.DatastorePath(self.ds, self.uuid,
+ path = ds_obj.DatastorePath(self.ds, self.uuid,
'ephemeral_1.vmdk')
vmwareapi_fake.assertPathExists(self, str(path))
def test_ephemeral_disk_attach_from_bdii_with_no_ephs(self):
bdi = {'ephemerals': []}
self._create_vm(bdi=bdi, ephemeral=50)
- path = ds_util.DatastorePath(self.ds, self.uuid,
+ path = ds_obj.DatastorePath(self.ds, self.uuid,
'ephemeral_0.vmdk')
vmwareapi_fake.assertPathExists(self, str(path))
def test_cdrom_attach_with_config_drive(self):
self.flags(force_config_drive=True)
- iso_path = ds_util.DatastorePath(self.ds, 'fake-config-drive')
+ iso_path = ds_obj.DatastorePath(self.ds, 'fake-config-drive')
self.cd_attach_called = False
def fake_create_config_drive(instance, injected_files, password,
@@ -789,7 +789,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
self._check_vm_info(info, power_state.RUNNING)
def test_spawn_disk_extend_exists(self):
- root = ds_util.DatastorePath(self.ds, 'vmware_base',
+ root = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.80.vmdk' % self.fake_image_uuid)
@@ -825,7 +825,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
mock_get_dc.return_value = dc_val
self._create_vm()
iid = img_props.image_id
- cached_image = ds_util.DatastorePath(self.ds, 'vmware_base',
+ cached_image = ds_obj.DatastorePath(self.ds, 'vmware_base',
iid, '%s.80.vmdk' % iid)
mock_extend.assert_called_once_with(
self.instance, self.instance.root_gb * units.Mi,
@@ -964,11 +964,11 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
mock_from_image.return_value = img_props
- cached_image = ds_util.DatastorePath(self.ds, 'vmware_base',
+ cached_image = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.80.vmdk' %
self.fake_image_uuid)
- tmp_file = ds_util.DatastorePath(self.ds, 'vmware_base',
+ tmp_file = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
'%s.80-flat.vmdk' %
self.fake_image_uuid)
@@ -1533,7 +1533,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
data_store_name, folder,
instance_uuid, cookies):
self.assertTrue(uuidutils.is_uuid_like(instance['uuid']))
- return str(ds_util.DatastorePath(data_store_name,
+ return str(ds_obj.DatastorePath(data_store_name,
instance_uuid, 'fake.iso'))
self.stubs.Set(self.conn._vmops, '_create_config_drive',
@@ -1905,7 +1905,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
_fake_get_timestamp_filename)
def _timestamp_file_exists(self, exists=True):
- timestamp = ds_util.DatastorePath(self.ds, 'vmware_base',
+ timestamp = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid,
self._get_timestamp_filename() + '/')
if exists:
@@ -1940,7 +1940,7 @@ class VMwareAPIVMTestCase(test.NoDBTestCase):
def test_timestamp_file_removed_aging(self, mock_get_by_inst):
self._timestamp_file_removed()
ts = self._get_timestamp_filename()
- ts_path = ds_util.DatastorePath(self.ds, 'vmware_base',
+ ts_path = ds_obj.DatastorePath(self.ds, 'vmware_base',
self.fake_image_uuid, ts + '/')
vmwareapi_fake._add_file(str(ts_path))
self._timestamp_file_exists()
diff --git a/nova/tests/unit/virt/vmwareapi/test_ds_util.py b/nova/tests/unit/virt/vmwareapi/test_ds_util.py
index 0823a5527f..e0985d92ee 100644
--- a/nova/tests/unit/virt/vmwareapi/test_ds_util.py
+++ b/nova/tests/unit/virt/vmwareapi/test_ds_util.py
@@ -18,7 +18,7 @@ import re
import mock
from oslo_utils import units
from oslo_vmware import exceptions as vexc
-from testtools import matchers
+from oslo_vmware.objects import datastore as ds_obj
from nova import exception
from nova import test
@@ -51,7 +51,7 @@ class DsUtilTestCase(test.NoDBTestCase):
mock.patch.object(self.session, '_call_method',
fake_call_method)
) as (_wait_for_task, _call_method):
- ds_path = ds_util.DatastorePath('ds', 'fake/path')
+ ds_path = ds_obj.DatastorePath('ds', 'fake/path')
ds_util.file_delete(self.session,
ds_path, 'fake-dc-ref')
_wait_for_task.assert_has_calls([
@@ -75,8 +75,8 @@ class DsUtilTestCase(test.NoDBTestCase):
mock.patch.object(self.session, '_call_method',
fake_call_method)
) as (_wait_for_task, _call_method):
- src_ds_path = ds_util.DatastorePath('ds', 'fake/path', 'src_file')
- dst_ds_path = ds_util.DatastorePath('ds', 'fake/path', 'dst_file')
+ src_ds_path = ds_obj.DatastorePath('ds', 'fake/path', 'src_file')
+ dst_ds_path = ds_obj.DatastorePath('ds', 'fake/path', 'dst_file')
ds_util.file_copy(self.session,
str(src_ds_path), 'fake-src-dc-ref',
str(dst_ds_path), 'fake-dst-dc-ref')
@@ -101,8 +101,8 @@ class DsUtilTestCase(test.NoDBTestCase):
mock.patch.object(self.session, '_call_method',
fake_call_method)
) as (_wait_for_task, _call_method):
- src_ds_path = ds_util.DatastorePath('ds', 'tmp/src')
- dst_ds_path = ds_util.DatastorePath('ds', 'base/dst')
+ src_ds_path = ds_obj.DatastorePath('ds', 'tmp/src')
+ dst_ds_path = ds_obj.DatastorePath('ds', 'base/dst')
ds_util.file_move(self.session,
'fake-dc-ref', src_ds_path, dst_ds_path)
_wait_for_task.assert_has_calls([
@@ -172,7 +172,7 @@ class DsUtilTestCase(test.NoDBTestCase):
with mock.patch.object(self.session, '_call_method',
fake_call_method):
- ds_path = ds_util.DatastorePath('ds', 'fake/path')
+ ds_path = ds_obj.DatastorePath('ds', 'fake/path')
ds_util.mkdir(self.session, ds_path, 'fake-dc-ref')
def test_file_exists(self):
@@ -209,7 +209,7 @@ class DsUtilTestCase(test.NoDBTestCase):
fake_call_method),
mock.patch.object(self.session, '_wait_for_task',
fake_wait_for_task)):
- ds_path = ds_util.DatastorePath('ds', 'fake/path')
+ ds_path = ds_obj.DatastorePath('ds', 'fake/path')
file_exists = ds_util.file_exists(self.session,
'fake-browser', ds_path, 'fake-file')
self.assertTrue(file_exists)
@@ -234,7 +234,7 @@ class DsUtilTestCase(test.NoDBTestCase):
fake_call_method),
mock.patch.object(self.session, '_wait_for_task',
fake_wait_for_task)):
- ds_path = ds_util.DatastorePath('ds', 'fake/path')
+ ds_path = ds_obj.DatastorePath('ds', 'fake/path')
file_exists = ds_util.file_exists(self.session,
'fake-browser', ds_path, 'fake-file')
self.assertFalse(file_exists)
@@ -445,182 +445,3 @@ class DsUtilTestCase(test.NoDBTestCase):
"normal",
"VMFS",
datastore_regex))
-
-
-class DatastoreTestCase(test.NoDBTestCase):
- def test_ds(self):
- ds = ds_util.Datastore(
- "fake_ref", "ds_name", 2 * units.Gi, 1 * units.Gi)
- self.assertEqual('ds_name', ds.name)
- self.assertEqual('fake_ref', ds.ref)
- self.assertEqual(2 * units.Gi, ds.capacity)
- self.assertEqual(1 * units.Gi, ds.freespace)
-
- def test_ds_invalid_space(self):
- self.assertRaises(ValueError, ds_util.Datastore,
- "fake_ref", "ds_name", 1 * units.Gi, 2 * units.Gi)
- self.assertRaises(ValueError, ds_util.Datastore,
- "fake_ref", "ds_name", None, 2 * units.Gi)
-
- def test_ds_no_capacity_no_freespace(self):
- ds = ds_util.Datastore("fake_ref", "ds_name")
- self.assertIsNone(ds.capacity)
- self.assertIsNone(ds.freespace)
-
- def test_ds_invalid(self):
- self.assertRaises(ValueError, ds_util.Datastore, None, "ds_name")
- self.assertRaises(ValueError, ds_util.Datastore, "fake_ref", None)
-
- def test_build_path(self):
- ds = ds_util.Datastore("fake_ref", "ds_name")
- ds_path = ds.build_path("some_dir", "foo.vmdk")
- self.assertEqual('[ds_name] some_dir/foo.vmdk', str(ds_path))
-
-
-class DatastorePathTestCase(test.NoDBTestCase):
-
- def test_ds_path(self):
- p = ds_util.DatastorePath('dsname', 'a/b/c', 'file.iso')
- self.assertEqual('[dsname] a/b/c/file.iso', str(p))
- self.assertEqual('a/b/c/file.iso', p.rel_path)
- self.assertEqual('a/b/c', p.parent.rel_path)
- self.assertEqual('[dsname] a/b/c', str(p.parent))
- self.assertEqual('dsname', p.datastore)
- self.assertEqual('file.iso', p.basename)
- self.assertEqual('a/b/c', p.dirname)
-
- def test_ds_path_no_ds_name(self):
- bad_args = [
- ('', ['a/b/c', 'file.iso']),
- (None, ['a/b/c', 'file.iso'])]
- for t in bad_args:
- self.assertRaises(
- ValueError, ds_util.DatastorePath,
- t[0], *t[1])
-
- def test_ds_path_invalid_path_components(self):
- bad_args = [
- ('dsname', [None]),
- ('dsname', ['', None]),
- ('dsname', ['a', None]),
- ('dsname', ['a', None, 'b']),
- ('dsname', [None, '']),
- ('dsname', [None, 'b'])]
-
- for t in bad_args:
- self.assertRaises(
- ValueError, ds_util.DatastorePath,
- t[0], *t[1])
-
- def test_ds_path_no_subdir(self):
- args = [
- ('dsname', ['', 'x.vmdk']),
- ('dsname', ['x.vmdk'])]
-
- canonical_p = ds_util.DatastorePath('dsname', 'x.vmdk')
- self.assertEqual('[dsname] x.vmdk', str(canonical_p))
- self.assertEqual('', canonical_p.dirname)
- self.assertEqual('x.vmdk', canonical_p.basename)
- self.assertEqual('x.vmdk', canonical_p.rel_path)
- for t in args:
- p = ds_util.DatastorePath(t[0], *t[1])
- self.assertEqual(str(canonical_p), str(p))
-
- def test_ds_path_ds_only(self):
- args = [
- ('dsname', []),
- ('dsname', ['']),
- ('dsname', ['', ''])]
-
- canonical_p = ds_util.DatastorePath('dsname')
- self.assertEqual('[dsname]', str(canonical_p))
- self.assertEqual('', canonical_p.rel_path)
- self.assertEqual('', canonical_p.basename)
- self.assertEqual('', canonical_p.dirname)
- for t in args:
- p = ds_util.DatastorePath(t[0], *t[1])
- self.assertEqual(str(canonical_p), str(p))
- self.assertEqual(canonical_p.rel_path, p.rel_path)
-
- def test_ds_path_equivalence(self):
- args = [
- ('dsname', ['a/b/c/', 'x.vmdk']),
- ('dsname', ['a/', 'b/c/', 'x.vmdk']),
- ('dsname', ['a', 'b', 'c', 'x.vmdk']),
- ('dsname', ['a/b/c', 'x.vmdk'])]
-
- canonical_p = ds_util.DatastorePath('dsname', 'a/b/c', 'x.vmdk')
- for t in args:
- p = ds_util.DatastorePath(t[0], *t[1])
- self.assertEqual(str(canonical_p), str(p))
- self.assertEqual(canonical_p.datastore, p.datastore)
- self.assertEqual(canonical_p.rel_path, p.rel_path)
- self.assertEqual(str(canonical_p.parent), str(p.parent))
-
- def test_ds_path_non_equivalence(self):
- args = [
- # leading slash
- ('dsname', ['/a', 'b', 'c', 'x.vmdk']),
- ('dsname', ['/a/b/c/', 'x.vmdk']),
- ('dsname', ['a/b/c', '/x.vmdk']),
- # leading space
- ('dsname', ['a/b/c/', ' x.vmdk']),
- ('dsname', ['a/', ' b/c/', 'x.vmdk']),
- ('dsname', [' a', 'b', 'c', 'x.vmdk']),
- # trailing space
- ('dsname', ['/a/b/c/', 'x.vmdk ']),
- ('dsname', ['a/b/c/ ', 'x.vmdk'])]
-
- canonical_p = ds_util.DatastorePath('dsname', 'a/b/c', 'x.vmdk')
- for t in args:
- p = ds_util.DatastorePath(t[0], *t[1])
- self.assertNotEqual(str(canonical_p), str(p))
-
- def test_ds_path_hashable(self):
- ds1 = ds_util.DatastorePath('dsname', 'path')
- ds2 = ds_util.DatastorePath('dsname', 'path')
-
- # If the above objects have the same hash, they will only be added to
- # the set once
- self.assertThat(set([ds1, ds2]), matchers.HasLength(1))
-
- def test_equal(self):
- a = ds_util.DatastorePath('ds_name', 'a')
- b = ds_util.DatastorePath('ds_name', 'a')
- self.assertEqual(a, b)
-
- def test_join(self):
- p = ds_util.DatastorePath('ds_name', 'a')
- ds_path = p.join('b')
- self.assertEqual('[ds_name] a/b', str(ds_path))
-
- p = ds_util.DatastorePath('ds_name', 'a')
- ds_path = p.join()
- self.assertEqual('[ds_name] a', str(ds_path))
-
- bad_args = [
- [None],
- ['', None],
- ['a', None],
- ['a', None, 'b']]
- for arg in bad_args:
- self.assertRaises(ValueError, p.join, *arg)
-
- def test_ds_path_parse(self):
- p = ds_util.DatastorePath.parse('[dsname]')
- self.assertEqual('dsname', p.datastore)
- self.assertEqual('', p.rel_path)
-
- p = ds_util.DatastorePath.parse('[dsname] folder')
- self.assertEqual('dsname', p.datastore)
- self.assertEqual('folder', p.rel_path)
-
- p = ds_util.DatastorePath.parse('[dsname] folder/file')
- self.assertEqual('dsname', p.datastore)
- self.assertEqual('folder/file', p.rel_path)
-
- for p in [None, '']:
- self.assertRaises(ValueError, ds_util.DatastorePath.parse, p)
-
- for p in ['bad path', '/a/b/c', 'a/b/c']:
- self.assertRaises(IndexError, ds_util.DatastorePath.parse, p)
diff --git a/nova/tests/unit/virt/vmwareapi/test_ds_util_datastore_selection.py b/nova/tests/unit/virt/vmwareapi/test_ds_util_datastore_selection.py
index cfa71f4135..dcaf023155 100644
--- a/nova/tests/unit/virt/vmwareapi/test_ds_util_datastore_selection.py
+++ b/nova/tests/unit/virt/vmwareapi/test_ds_util_datastore_selection.py
@@ -15,6 +15,7 @@ import collections
import re
from oslo_utils import units
+from oslo_vmware.objects import datastore as ds_obj
from nova import test
from nova.virt.vmwareapi import ds_util
@@ -62,7 +63,7 @@ class VMwareDSUtilDatastoreSelectionTestCase(test.NoDBTestCase):
def test_filter_datastores_simple(self):
datastores = self.build_result_set(self.data)
- best_match = ds_util.Datastore(ref='fake_ref', name='ds',
+ best_match = ds_obj.Datastore(ref='fake_ref', name='ds',
capacity=0, freespace=0)
rec = ds_util._select_datastore(None, datastores, best_match)
@@ -76,7 +77,7 @@ class VMwareDSUtilDatastoreSelectionTestCase(test.NoDBTestCase):
data = []
datastores = self.build_result_set(data)
- best_match = ds_util.Datastore(ref='fake_ref', name='ds',
+ best_match = ds_obj.Datastore(ref='fake_ref', name='ds',
capacity=0, freespace=0)
rec = ds_util._select_datastore(None, datastores, best_match)
@@ -86,7 +87,7 @@ class VMwareDSUtilDatastoreSelectionTestCase(test.NoDBTestCase):
datastores = self.build_result_set(self.data)
datastore_regex = re.compile('no_match.*')
- best_match = ds_util.Datastore(ref='fake_ref', name='ds',
+ best_match = ds_obj.Datastore(ref='fake_ref', name='ds',
capacity=0, freespace=0)
rec = ds_util._select_datastore(None, datastores,
best_match,
@@ -110,7 +111,7 @@ class VMwareDSUtilDatastoreSelectionTestCase(test.NoDBTestCase):
datastores = self.build_result_set(data)
datastore_regex = re.compile('.*-good$')
- best_match = ds_util.Datastore(ref='fake_ref', name='ds',
+ best_match = ds_obj.Datastore(ref='fake_ref', name='ds',
capacity=0, freespace=0)
rec = ds_util._select_datastore(None, datastores,
best_match,
@@ -136,7 +137,7 @@ class VMwareDSUtilDatastoreSelectionTestCase(test.NoDBTestCase):
prop_names = ['summary.type', 'summary.name',
'summary.capacity', 'summary.freeSpace']
datastores = self.build_result_set(data, prop_names)
- best_match = ds_util.Datastore(ref='fake_ref', name='ds',
+ best_match = ds_obj.Datastore(ref='fake_ref', name='ds',
capacity=0, freespace=0)
rec = ds_util._select_datastore(None, datastores, best_match)
@@ -155,7 +156,7 @@ class VMwareDSUtilDatastoreSelectionTestCase(test.NoDBTestCase):
datastore_regex = re.compile('.*-good$')
# the current best match is better than all candidates
- best_match = ds_util.Datastore(ref='ds-100', name='best-ds-good',
+ best_match = ds_obj.Datastore(ref='ds-100', name='best-ds-good',
capacity=20 * units.Gi, freespace=19 * units.Gi)
rec = ds_util._select_datastore(None,
datastores,
diff --git a/nova/tests/unit/virt/vmwareapi/test_imagecache.py b/nova/tests/unit/virt/vmwareapi/test_imagecache.py
index f0c6caf18f..b492f21a1f 100644
--- a/nova/tests/unit/virt/vmwareapi/test_imagecache.py
+++ b/nova/tests/unit/virt/vmwareapi/test_imagecache.py
@@ -18,6 +18,7 @@ import datetime
import mock
from oslo_config import cfg
from oslo_utils import timeutils
+from oslo_vmware.objects import datastore as ds_obj
from nova import objects
from nova import test
@@ -67,13 +68,13 @@ class ImageCacheManagerTestCase(test.NoDBTestCase):
self.exists = False
self._imagecache.timestamp_cleanup(
'fake-dc-ref', 'fake-ds-browser',
- ds_util.DatastorePath('fake-ds', 'fake-path'))
+ ds_obj.DatastorePath('fake-ds', 'fake-path'))
self.assertEqual(0, _file_delete.call_count)
self.exists = True
self._imagecache.timestamp_cleanup(
'fake-dc-ref', 'fake-ds-browser',
- ds_util.DatastorePath('fake-ds', 'fake-path'))
- expected_ds_path = ds_util.DatastorePath(
+ ds_obj.DatastorePath('fake-ds', 'fake-path'))
+ expected_ds_path = ds_obj.DatastorePath(
'fake-ds', 'fake-path', self._file_name)
_file_delete.assert_called_once_with(self._session,
expected_ds_path, 'fake-dc-ref')
@@ -94,12 +95,12 @@ class ImageCacheManagerTestCase(test.NoDBTestCase):
self.exists = True
ts = self._imagecache._get_timestamp(
'fake-ds-browser',
- ds_util.DatastorePath('fake-ds', 'fake-path'))
+ ds_obj.DatastorePath('fake-ds', 'fake-path'))
self.assertEqual(self._file_name, ts)
self.exists = False
ts = self._imagecache._get_timestamp(
'fake-ds-browser',
- ds_util.DatastorePath('fake-ds', 'fake-path'))
+ ds_obj.DatastorePath('fake-ds', 'fake-path'))
self.assertIsNone(ts)
def test_get_timestamp_filename(self):
@@ -141,7 +142,7 @@ class ImageCacheManagerTestCase(test.NoDBTestCase):
fake_get_sub_folders)
) as (_get_dynamic, _get_sub_folders):
fake_ds_ref = fake.ManagedObjectReference('fake-ds-ref')
- datastore = ds_util.Datastore(name='ds', ref=fake_ds_ref)
+ datastore = ds_obj.Datastore(name='ds', ref=fake_ds_ref)
ds_path = datastore.build_path('base_folder')
images = self._imagecache._list_datastore_images(
ds_path, datastore)
@@ -161,7 +162,7 @@ class ImageCacheManagerTestCase(test.NoDBTestCase):
image_id = "fake_image_id"
dc_ref = "fake_dc_ref"
fake_ds_ref = mock.Mock()
- ds = ds_util.Datastore(
+ ds = ds_obj.Datastore(
ref=fake_ds_ref, name='fake_ds',
capacity=1,
freespace=1)
@@ -224,7 +225,7 @@ class ImageCacheManagerTestCase(test.NoDBTestCase):
) as (_get_ds_browser, _get_timestamp, _mkdir, _file_delete,
_timestamp_cleanup):
timeutils.set_time_override(override_time=self._time)
- datastore = ds_util.Datastore(name='ds', ref='fake-ds-ref')
+ datastore = ds_obj.Datastore(name='ds', ref='fake-ds-ref')
dc_info = vmops.DcInfo(ref='dc_ref', name='name',
vmFolder='vmFolder')
self._get_timestamp_called = 0
@@ -233,7 +234,7 @@ class ImageCacheManagerTestCase(test.NoDBTestCase):
self._imagecache.used_images = set(['fake-image-4'])
self._imagecache._age_cached_images(
'fake-context', datastore, dc_info,
- ds_util.DatastorePath('fake-ds', 'fake-path'))
+ ds_obj.DatastorePath('fake-ds', 'fake-path'))
self.assertEqual(3, self._get_timestamp_called)
@mock.patch.object(objects.block_device.BlockDeviceMappingList,
@@ -273,7 +274,7 @@ class ImageCacheManagerTestCase(test.NoDBTestCase):
all_instances = [fake_instance.fake_instance_obj(None, **instance)
for instance in instances]
self.images = set(['1', '2'])
- datastore = ds_util.Datastore(name='ds', ref='fake-ds-ref')
+ datastore = ds_obj.Datastore(name='ds', ref='fake-ds-ref')
dc_info = vmops.DcInfo(ref='dc_ref', name='name',
vmFolder='vmFolder')
datastores_info = [(datastore, dc_info)]
diff --git a/nova/tests/unit/virt/vmwareapi/test_vm_util.py b/nova/tests/unit/virt/vmwareapi/test_vm_util.py
index 66ca991ed7..81dd85c985 100644
--- a/nova/tests/unit/virt/vmwareapi/test_vm_util.py
+++ b/nova/tests/unit/virt/vmwareapi/test_vm_util.py
@@ -20,6 +20,7 @@ import contextlib
import mock
from oslo_utils import uuidutils
from oslo_vmware import exceptions as vexc
+from oslo_vmware.objects import datastore as ds_obj
from oslo_vmware import pbm
from nova import exception
@@ -29,7 +30,6 @@ from nova.tests.unit import fake_instance
from nova.tests.unit.virt.vmwareapi import fake
from nova.tests.unit.virt.vmwareapi import stubs
from nova.virt.vmwareapi import driver
-from nova.virt.vmwareapi import ds_util
from nova.virt.vmwareapi import vm_util
@@ -1096,7 +1096,7 @@ class VMwareVMUtilTestCase(test.NoDBTestCase):
self.assertEqual('vmx-08', result.version)
def test_vm_create_spec_with_profile_spec(self):
- datastore = ds_util.Datastore('fake-ds-ref', 'fake-ds-name')
+ datastore = ds_obj.Datastore('fake-ds-ref', 'fake-ds-name')
extra_specs = vm_util.ExtraSpecs()
create_spec = vm_util.get_vm_create_spec(fake.FakeFactory(),
self._instance,
diff --git a/nova/tests/unit/virt/vmwareapi/test_vmops.py b/nova/tests/unit/virt/vmwareapi/test_vmops.py
index ec3a93162f..93d485562b 100644
--- a/nova/tests/unit/virt/vmwareapi/test_vmops.py
+++ b/nova/tests/unit/virt/vmwareapi/test_vmops.py
@@ -18,6 +18,7 @@ import mock
from oslo_utils import units
from oslo_utils import uuidutils
from oslo_vmware import exceptions as vexc
+from oslo_vmware.objects import datastore as ds_obj
from nova.compute import power_state
from nova import context
@@ -62,7 +63,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
self._virtapi = mock.Mock()
self._image_id = nova.tests.unit.image.fake.get_valid_image_id()
fake_ds_ref = vmwareapi_fake.ManagedObjectReference('fake-ds')
- self._ds = ds_util.Datastore(
+ self._ds = ds_obj.Datastore(
ref=fake_ds_ref, name='fake_ds',
capacity=10 * units.Gi,
freespace=10 * units.Gi)
@@ -160,7 +161,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
ref=dc_ref,
name='fake-name',
vmFolder='fake-folder')
- path = ds_util.DatastorePath(ds_name, base_name)
+ path = ds_obj.DatastorePath(ds_name, base_name)
return ds_name, ds_ref, ops, path, dc_ref
@mock.patch.object(ds_util, 'mkdir')
@@ -367,7 +368,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
_volumeops = mock.Mock()
self._vmops._volumeops = _volumeops
- ds = ds_util.Datastore('fake-ref', 'ds1')
+ ds = ds_obj.Datastore('fake-ref', 'ds1')
mock_get_ds_by_ref.return_value = ds
mock_find_rescue.return_value = 'fake-rescue-device'
mock_get_boot_spec.return_value = 'fake-boot-spec'
@@ -522,7 +523,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
fake_get_extra_specs,
power_on):
"""Tests the finish_revert_migration method on vmops."""
- datastore = ds_util.Datastore(ref='fake-ref', name='fake')
+ datastore = ds_obj.Datastore(ref='fake-ref', name='fake')
device = vmwareapi_fake.DataObject()
backing = vmwareapi_fake.DataObject()
backing.datastore = datastore.ref
@@ -571,7 +572,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
fake_get_browser.assert_called_once_with('fake-ref')
fake_original_exists.assert_called_once_with(
self._session, 'fake-browser',
- ds_util.DatastorePath(datastore.name, 'uuid'),
+ ds_obj.DatastorePath(datastore.name, 'uuid'),
'original.vmdk')
mock_detach_disk.assert_called_once_with('fake-ref',
@@ -622,7 +623,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
@mock.patch.object(ds_util, 'disk_copy')
def test_resize_disk(self, fake_disk_copy, fake_disk_move,
fake_extend):
- datastore = ds_util.Datastore(ref='fake-ref', name='fake')
+ datastore = ds_obj.Datastore(ref='fake-ref', name='fake')
device = vmwareapi_fake.DataObject()
backing = vmwareapi_fake.DataObject()
backing.datastore = datastore.ref
@@ -675,7 +676,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
fake_original_exists,
fake_disk_delete):
"""Tests the confirm_migration method on vmops."""
- datastore = ds_util.Datastore(ref='fake-ref', name='fake')
+ datastore = ds_obj.Datastore(ref='fake-ref', name='fake')
device = vmwareapi_fake.DataObject()
backing = vmwareapi_fake.DataObject()
backing.datastore = datastore.ref
@@ -703,7 +704,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
fake_get_browser.assert_called_once_with('fake-ref')
fake_original_exists.assert_called_once_with(
self._session, 'fake-browser',
- ds_util.DatastorePath(datastore.name, 'uuid'),
+ ds_obj.DatastorePath(datastore.name, 'uuid'),
'original.vmdk')
fake_disk_delete.assert_called_once_with(
self._session, dc_info.ref, '[fake] uuid/original.vmdk')
@@ -1425,8 +1426,8 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
self._vmops._volumeops = mock.Mock()
mock_attach_disk_to_vm = self._vmops._volumeops.attach_disk_to_vm
- path = str(ds_util.DatastorePath(vi.datastore.name, 'fake_uuid',
- 'fake-filename'))
+ path = str(ds_obj.DatastorePath(vi.datastore.name, 'fake_uuid',
+ 'fake-filename'))
self._vmops._create_and_attach_ephemeral_disk(self._instance,
'fake-vm-ref',
vi.dc_info, 1,
@@ -1831,7 +1832,7 @@ class VMwareVMOpsTestCase(test.NoDBTestCase):
sparse_disk_path = "[%s] vmware_temp/tmp-uuid/%s/tmp-sparse.vmdk" % (
self._ds.name, self._image_id)
- tmp_image_ds_loc = ds_util.DatastorePath.parse(sparse_disk_path)
+ tmp_image_ds_loc = ds_obj.DatastorePath.parse(sparse_disk_path)
self._vmops._cache_sparse_image(vi, tmp_image_ds_loc)