Fix unittests for py310
Python 3.10 unittests were failing due to: https://bugs.python.org/issue43478 In cases where autospec wasn't required, or where duplicated. It has been removed accordingly. Change-Id: I4de2ab8b9fe1f1541e04d3c863db81c5cada0cd6
This commit is contained in:
parent
f92535b1ca
commit
ad48f5c43b
|
@ -347,8 +347,8 @@ class TestHeatPodLauncher(base.TestCase):
|
|||
launcher.stop_heat()
|
||||
mock_pod_exists.assert_called()
|
||||
mock_pod_state.assert_called()
|
||||
self.check_call.asert_called_once_with(['sudo', 'podman', 'pod',
|
||||
'stop', 'ephemeral-heat'])
|
||||
self.check_call.assert_called_once_with(['sudo', 'podman', 'pod',
|
||||
'stop', 'ephemeral-heat'])
|
||||
|
||||
self.check_call.reset_mock()
|
||||
mock_pod_exists.reset_mock()
|
||||
|
|
|
@ -15,7 +15,6 @@
|
|||
|
||||
from unittest import mock
|
||||
|
||||
from tripleoclient.tests import fakes as ooofakes
|
||||
from tripleoclient.tests.v1.overcloud_external_upgrade import fakes
|
||||
from tripleoclient.v1 import overcloud_external_upgrade
|
||||
|
||||
|
@ -35,23 +34,11 @@ class TestOvercloudExternalUpgradeRun(fakes.TestOvercloudExternalUpgradeRun):
|
|||
self.mock_uuid4 = uuid4_patcher.start()
|
||||
self.addCleanup(self.mock_uuid4.stop)
|
||||
|
||||
@mock.patch(
|
||||
'ansible_runner.runner_config.RunnerConfig',
|
||||
autospec=True,
|
||||
return_value=ooofakes.FakeRunnerConfig()
|
||||
)
|
||||
@mock.patch(
|
||||
'ansible_runner.Runner.run',
|
||||
return_value=ooofakes.fake_ansible_runner_run_return()
|
||||
)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook',
|
||||
autospec=True)
|
||||
@mock.patch('os.path.expanduser')
|
||||
@mock.patch('oslo_concurrency.processutils.execute')
|
||||
@mock.patch('builtins.open')
|
||||
def test_upgrade_with_user_and_tags(self, mock_open, mock_execute,
|
||||
mock_expanduser, update_ansible,
|
||||
mock_run, mock_run_prepare):
|
||||
mock_expanduser):
|
||||
mock_expanduser.return_value = '/home/fake/'
|
||||
argslist = ['--ssh-user', 'tripleo-admin',
|
||||
'--tags', 'ceph']
|
||||
|
@ -62,23 +49,13 @@ class TestOvercloudExternalUpgradeRun(fakes.TestOvercloudExternalUpgradeRun):
|
|||
|
||||
self.check_parser(self.cmd, argslist, verifylist)
|
||||
|
||||
@mock.patch(
|
||||
'ansible_runner.runner_config.RunnerConfig',
|
||||
autospec=True,
|
||||
return_value=ooofakes.FakeRunnerConfig()
|
||||
)
|
||||
@mock.patch(
|
||||
'ansible_runner.Runner.run',
|
||||
return_value=ooofakes.fake_ansible_runner_run_return()
|
||||
)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook',
|
||||
autospec=True)
|
||||
@mock.patch('os.path.expanduser')
|
||||
@mock.patch('oslo_concurrency.processutils.execute')
|
||||
@mock.patch('builtins.open')
|
||||
def test_upgrade_with_user_and_extra_vars(self, mock_open, mock_execute,
|
||||
mock_expanduser, update_ansible,
|
||||
mock_run, mock_run_prepare):
|
||||
mock_expanduser, update_ansible):
|
||||
mock_expanduser.return_value = '/home/fake/'
|
||||
argslist = ['--ssh-user', 'tripleo-admin',
|
||||
'--extra-vars', 'key1=val1',
|
||||
|
|
|
@ -46,8 +46,7 @@ class TestOvercloudUpgradePrepare(fakes.TestOvercloudUpgradePrepare):
|
|||
@mock.patch('tripleoclient.workflows.deployment.'
|
||||
'get_hosts_and_enable_ssh_admin', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.prepend_environment', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.get_stack',
|
||||
autospec=True)
|
||||
@mock.patch('tripleoclient.utils.get_stack')
|
||||
@mock.patch('tripleoclient.v1.overcloud_upgrade.UpgradePrepare.log',
|
||||
autospec=True)
|
||||
@mock.patch('yaml.safe_load')
|
||||
|
@ -64,8 +63,8 @@ class TestOvercloudUpgradePrepare(fakes.TestOvercloudUpgradePrepare):
|
|||
mock_usercheck):
|
||||
|
||||
mock_stack = mock.Mock(parameters={'DeployIdentifier': ''})
|
||||
mock_stack.stack_name = 'overcloud'
|
||||
mock_get_stack.return_value = mock_stack
|
||||
mock_stack.stack_name = 'overcloud'
|
||||
mock_yaml.return_value = {'fake_container': 'fake_value'}
|
||||
add_env = mock.Mock()
|
||||
add_env.return_value = True
|
||||
|
@ -103,8 +102,7 @@ class TestOvercloudUpgradePrepare(fakes.TestOvercloudUpgradePrepare):
|
|||
return_value=True)
|
||||
@mock.patch('tripleoclient.v1.overcloud_deploy.DeployOvercloud.'
|
||||
'take_action')
|
||||
@mock.patch('tripleoclient.utils.get_stack',
|
||||
autospec=True)
|
||||
@mock.patch('tripleoclient.utils.get_stack')
|
||||
@mock.patch('tripleoclient.utils.prepend_environment', autospec=True)
|
||||
@mock.patch('builtins.open')
|
||||
@mock.patch('yaml.safe_load')
|
||||
|
@ -190,7 +188,6 @@ class TestOvercloudUpgradeRun(fakes.TestOvercloudUpgradeRun):
|
|||
return_value=True)
|
||||
@mock.patch(
|
||||
'ansible_runner.runner_config.RunnerConfig',
|
||||
autospec=True,
|
||||
return_value=ooofakes.FakeRunnerConfig()
|
||||
)
|
||||
@mock.patch(
|
||||
|
|
|
@ -33,10 +33,10 @@ class TestOvercloudCephDeploy(fakes.FakePlaybookExecution):
|
|||
self.cmd = overcloud_ceph.OvercloudCephDeploy(self.app,
|
||||
app_args)
|
||||
|
||||
@mock.patch('tripleoclient.utils.get_ceph_networks', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.get_ceph_networks', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_overcloud_deploy_ceph(self, mock_playbook, mock_abspath,
|
||||
mock_path_exists, mock_tempdirs,
|
||||
|
@ -78,10 +78,10 @@ class TestOvercloudCephDeploy(fakes.FakePlaybookExecution):
|
|||
}
|
||||
)
|
||||
|
||||
@mock.patch('tripleoclient.utils.get_ceph_networks', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.get_ceph_networks', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_deploy_ceph_spec(self, mock_playbook, mock_abspath,
|
||||
mock_path_exists, mock_tempdirs,
|
||||
|
@ -125,8 +125,8 @@ class TestOvercloudCephDeploy(fakes.FakePlaybookExecution):
|
|||
}
|
||||
)
|
||||
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
def test_overcloud_deploy_ceph_no_overwrite(self, mock_abspath,
|
||||
mock_path_exists):
|
||||
arglist = ['deployed-metal.yaml',
|
||||
|
@ -136,8 +136,8 @@ class TestOvercloudCephDeploy(fakes.FakePlaybookExecution):
|
|||
self.assertRaises(osc_lib_exc.CommandError,
|
||||
self.cmd.take_action, parsed_args)
|
||||
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
def test_overcloud_deploy_ceph_no_metal(self, mock_abspath,
|
||||
mock_path_exists):
|
||||
arglist = ['--stack', 'overcloud',
|
||||
|
@ -146,10 +146,10 @@ class TestOvercloudCephDeploy(fakes.FakePlaybookExecution):
|
|||
self.assertRaises(osc_lib_exc.CommandError,
|
||||
self.cmd.take_action, parsed_args)
|
||||
|
||||
@mock.patch('tripleoclient.utils.get_ceph_networks', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.get_ceph_networks', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_overcloud_deploy_ceph_ansible_no_force(self,
|
||||
mock_playbook,
|
||||
|
@ -177,13 +177,13 @@ class TestOvercloudCephUserDisable(fakes.FakePlaybookExecution):
|
|||
app_args)
|
||||
|
||||
@mock.patch('tripleoclient.utils.parse_ansible_inventory',
|
||||
autospect=True, return_value=['ceph0', 'ceph1', 'compute0'])
|
||||
autospec=True, return_value=['ceph0', 'ceph1', 'compute0'])
|
||||
@mock.patch('tripleoclient.utils.get_host_groups_from_ceph_spec',
|
||||
autospect=True, return_value={'_admin': ['ceph0'],
|
||||
'non_admin': ['ceph1']})
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
autospec=True, return_value={'_admin': ['ceph0'],
|
||||
'non_admin': ['ceph1']})
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_ceph_user_disable(self, mock_playbook, mock_abspath,
|
||||
mock_path_exists, mock_tempdirs,
|
||||
|
@ -221,8 +221,8 @@ class TestOvercloudCephUserDisable(fakes.FakePlaybookExecution):
|
|||
}
|
||||
)
|
||||
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
def test_ceph_user_disable_no_yes(self, mock_abspath,
|
||||
mock_path_exists):
|
||||
arglist = ['ceph_spec.yaml',
|
||||
|
@ -233,8 +233,8 @@ class TestOvercloudCephUserDisable(fakes.FakePlaybookExecution):
|
|||
self.assertRaises(osc_lib_exc.CommandError,
|
||||
self.cmd.take_action, parsed_args)
|
||||
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
def test_ceph_user_disable_invalid_fsid(self, mock_abspath,
|
||||
mock_path_exists):
|
||||
arglist = ['ceph_spec.yaml',
|
||||
|
@ -258,13 +258,13 @@ class TestOvercloudCephUserEnable(fakes.FakePlaybookExecution):
|
|||
app_args)
|
||||
|
||||
@mock.patch('tripleoclient.utils.parse_ansible_inventory',
|
||||
autospect=True, return_value=['ceph0', 'ceph1', 'compute0'])
|
||||
autospec=True, return_value=['ceph0', 'ceph1', 'compute0'])
|
||||
@mock.patch('tripleoclient.utils.get_host_groups_from_ceph_spec',
|
||||
autospect=True, return_value={'_admin': ['ceph0'],
|
||||
'non_admin': ['ceph1']})
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
autospec=True, return_value={'_admin': ['ceph0'],
|
||||
'non_admin': ['ceph1']})
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_ceph_user_enable_no_fsid(self, mock_playbook, mock_abspath,
|
||||
mock_path_exists, mock_tempdirs,
|
||||
|
@ -291,12 +291,12 @@ class TestOvercloudCephUserEnable(fakes.FakePlaybookExecution):
|
|||
)
|
||||
|
||||
@mock.patch('tripleoclient.utils.parse_ansible_inventory',
|
||||
autospect=True)
|
||||
autospec=True)
|
||||
@mock.patch('tripleoclient.utils.get_host_groups_from_ceph_spec',
|
||||
autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
autospec=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_ceph_user_enable_fsid(self, mock_playbook, mock_abspath,
|
||||
mock_path_exists, mock_tempdirs,
|
||||
|
@ -339,9 +339,9 @@ class TestOvercloudCephSpec(fakes.FakePlaybookExecution):
|
|||
self.cmd = overcloud_ceph.OvercloudCephSpec(self.app,
|
||||
app_args)
|
||||
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_overcloud_ceph_spec(self, mock_playbook, mock_abspath,
|
||||
mock_path_exists, mock_tempdirs):
|
||||
|
|
|
@ -95,9 +95,9 @@ class TestDeleteOvercloud(deploy_fakes.TestDeployOvercloud):
|
|||
)
|
||||
self.assertEqual(mock_run_playbook.call_count, 2)
|
||||
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_overcloud_delete_network_unprovision(self, mock_run_playbook,
|
||||
mock_path_exists,
|
||||
|
|
|
@ -34,8 +34,8 @@ class TestOvercloudNetworkExtract(fakes.FakePlaybookExecution):
|
|||
self.cmd = overcloud_network.OvercloudNetworkExtract(self.app,
|
||||
app_args)
|
||||
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_overcloud_network_extract(self, mock_playbook, mock_abspath,
|
||||
mock_tempdirs):
|
||||
|
@ -56,8 +56,8 @@ class TestOvercloudNetworkExtract(fakes.FakePlaybookExecution):
|
|||
}
|
||||
)
|
||||
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
def test_overcloud_network_extract_no_overwrite(self, mock_abspath,
|
||||
mock_path_exists):
|
||||
mock_abspath.return_value = '/test/test'
|
||||
|
@ -86,9 +86,9 @@ class TestOvercloudNetworkProvision(fakes.FakePlaybookExecution):
|
|||
mock_copy_to_wd.start()
|
||||
self.addCleanup(mock_copy_to_wd.stop)
|
||||
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_overcloud_network_provision(self, mock_playbook, mock_path_exists,
|
||||
mock_abspath, mock_tempdirs):
|
||||
|
@ -114,8 +114,8 @@ class TestOvercloudNetworkProvision(fakes.FakePlaybookExecution):
|
|||
}
|
||||
)
|
||||
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
def test_overcloud_network_extract_no_overwrite(self, mock_abspath,
|
||||
mock_path_exists):
|
||||
arglist = ['--output', 'deployed_networks.yaml', 'network-data.yaml']
|
||||
|
@ -142,9 +142,9 @@ class TestOvercloudNetworkUnprovision(fakes.FakePlaybookExecution):
|
|||
None)
|
||||
self.cmd.app_args = mock.Mock(verbose_level=1)
|
||||
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospect=True)
|
||||
@mock.patch('os.path.abspath', autospect=True)
|
||||
@mock.patch('os.path.exists', autospect=True)
|
||||
@mock.patch('tripleoclient.utils.TempDirs', autospec=True)
|
||||
@mock.patch('os.path.abspath', autospec=True)
|
||||
@mock.patch('os.path.exists', autospec=True)
|
||||
@mock.patch('tripleoclient.utils.run_ansible_playbook', autospec=True)
|
||||
def test_overcloud_network_unprovision(self, mock_playbook,
|
||||
mock_path_exists,
|
||||
|
|
|
@ -3181,7 +3181,8 @@ def parse_container_image_prepare(tht_key='ContainerImagePrepare',
|
|||
if len(registry) == 0:
|
||||
registry = url_parse.urlparse('//' + key).netloc
|
||||
if tag == registry:
|
||||
if isinstance(tag_list[registry], collections.Mapping):
|
||||
if isinstance(tag_list[registry],
|
||||
collections.abc.Mapping):
|
||||
credentials = tag_list[registry].popitem()
|
||||
image_map['registry_username'] = credentials[0]
|
||||
image_map['registry_password'] = credentials[1]
|
||||
|
|
Loading…
Reference in New Issue