diff options
| author | Stephen Finucane <sfinucan@redhat.com> | 2020-10-13 14:31:11 +0100 |
|---|---|---|
| committer | Stephen Finucane <sfinucan@redhat.com> | 2020-10-13 15:09:55 +0100 |
| commit | 5fd399eabaff7c7994d4ba79c7e9d77131436c5d (patch) | |
| tree | 549feb540b8158573afdc3bcaec242f09c9b4c15 /openstackclient/tests/unit | |
| parent | 08b0e5855be5dc12a2fd04c5c92027c8a85a0d00 (diff) | |
| download | python-openstackclient-5fd399eabaff7c7994d4ba79c7e9d77131436c5d.tar.gz | |
Cleanup of 'server migration list' command
Address some post merge nits.
Change-Id: Ie59521d81fab191194f6c1a114b007fa17f5299f
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Diffstat (limited to 'openstackclient/tests/unit')
| -rw-r--r-- | openstackclient/tests/unit/compute/v2/test_server.py | 185 |
1 files changed, 102 insertions, 83 deletions
diff --git a/openstackclient/tests/unit/compute/v2/test_server.py b/openstackclient/tests/unit/compute/v2/test_server.py index 3b98c873..4b000180 100644 --- a/openstackclient/tests/unit/compute/v2/test_server.py +++ b/openstackclient/tests/unit/compute/v2/test_server.py @@ -47,10 +47,14 @@ class TestServer(compute_fakes.TestComputev2): self.app.client_manager.compute.server_migrations self.server_migrations_mock.reset_mock() - # Get a shortcut to the compute client volumeManager Mock + # Get a shortcut to the compute client VolumeManager mock self.servers_volumes_mock = self.app.client_manager.compute.volumes self.servers_volumes_mock.reset_mock() + # Get a shortcut to the compute client MigrationManager mock + self.migrations_mock = self.app.client_manager.compute.migrations + self.migrations_mock.reset_mock() + # Get a shortcut to the compute client FlavorManager Mock self.flavors_mock = self.app.client_manager.compute.flavors self.flavors_mock.reset_mock() @@ -3728,34 +3732,7 @@ class TestServerMigrate(TestServer): self.assertNotCalled(self.servers_mock.live_migrate) -class TestServerMigration(TestServer): - - def setUp(self): - super(TestServerMigration, self).setUp() - - # Get a shortcut to the compute client ServerManager Mock - self.servers_mock = self.app.client_manager.compute.servers - self.servers_mock.reset_mock() - - self.migrations_mock = ( - self.app.client_manager.compute.migrations) - self.migrations_mock.reset_mock() - - self.server = self.setup_servers_mock(1)[0] - - def setup_servers_mock(self, count): - servers = compute_fakes.FakeServer.create_servers(count=count) - - # This is the return value for utils.find_resource() - self.servers_mock.get = compute_fakes.FakeServer.get_servers(servers) - return servers - - def setup_server_migrations_mock(self, count): - return compute_fakes.FakeServerMigration.create_server_migrations( - count=count) - - -class TestListMigration(TestServerMigration): +class TestListMigration(TestServer): """Test fetch all migrations.""" MIGRATION_COLUMNS = [ @@ -3767,24 +3744,48 @@ class TestListMigration(TestServerMigration): def setUp(self): super(TestListMigration, self).setUp() - self.cmd = server.ListMigration(self.app, None) - self.migrations = self.setup_server_migrations_mock(3) - self.migrations_mock.list.return_value = self.migrations - self.setup_server_migrations_data(self.migrations) + self.server = compute_fakes.FakeServer.create_one_server() + self.servers_mock.get.return_value = self.server - self.app.client_manager.compute.api_version = api_versions.APIVersion( - '2.20') + self.migrations = compute_fakes.FakeServerMigration\ + .create_server_migrations(count=3) + self.migrations_mock.list.return_value = self.migrations - def setup_server_migrations_data(self, migrations): self.data = (common_utils.get_item_properties( - s, self.MIGRATION_COLUMNS) for s in migrations) + s, self.MIGRATION_COLUMNS) for s in self.migrations) + + # Get the command object to test + self.cmd = server.ListMigration(self.app, None) + + def test_server_migration_list_no_options(self): + arglist = [] + verifylist = [] + + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + columns, data = self.cmd.take_action(parsed_args) + + # Set expected values + kwargs = { + 'status': None, + 'host': None, + 'server': None, + } + + self.migrations_mock.list.assert_called_with(**kwargs) + + self.assertEqual(self.MIGRATION_COLUMNS, columns) + self.assertEqual(tuple(self.data), tuple(data)) - def test_server_migraton_list(self): + def test_server_migration_list(self): arglist = [ - '--status', 'migrating' + '--server', 'server1', + '--host', 'host1', + '--status', 'migrating', ] verifylist = [ - ('status', 'migrating') + ('server', 'server1'), + ('host', 'host1'), + ('status', 'migrating'), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) @@ -3792,8 +3793,8 @@ class TestListMigration(TestServerMigration): # Set expected values kwargs = { 'status': 'migrating', - 'host': None, - 'server': None, + 'host': 'host1', + 'server': 'server1', } self.migrations_mock.list.assert_called_with(**kwargs) @@ -3813,15 +3814,11 @@ class TestListMigrationV223(TestListMigration): def setUp(self): super(TestListMigrationV223, self).setUp() - self.cmd = server.ListMigration(self.app, None) - self.migrations = self.setup_server_migrations_mock(3) - self.migrations_mock.list.return_value = self.migrations - self.setup_server_migrations_data(self.migrations) self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.23') - def test_server_migraton_list(self): + def test_server_migration_list(self): arglist = [ '--status', 'migrating' ] @@ -3858,15 +3855,11 @@ class TestListMigrationV259(TestListMigration): def setUp(self): super(TestListMigrationV259, self).setUp() - self.cmd = server.ListMigration(self.app, None) - self.migrations = self.setup_server_migrations_mock(3) - self.migrations_mock.list.return_value = self.migrations - self.setup_server_migrations_data(self.migrations) self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.59') - def test_server_migraton_list(self): + def test_server_migration_list(self): arglist = [ '--status', 'migrating', '--limit', '1', @@ -3897,7 +3890,7 @@ class TestListMigrationV259(TestListMigration): self.assertEqual(self.MIGRATION_COLUMNS, columns) self.assertEqual(tuple(self.data), tuple(data)) - def test_server_migraton_list_with_limit_pre_v259(self): + def test_server_migration_list_with_limit_pre_v259(self): self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.58') arglist = [ @@ -3909,10 +3902,15 @@ class TestListMigrationV259(TestListMigration): ('limit', 1) ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) - self.assertRaises(exceptions.CommandError, self.cmd.take_action, - parsed_args) + ex = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-compute-api-version 2.59 or greater is required', + str(ex)) - def test_server_migraton_list_with_marker_pre_v259(self): + def test_server_migration_list_with_marker_pre_v259(self): self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.58') arglist = [ @@ -3924,10 +3922,15 @@ class TestListMigrationV259(TestListMigration): ('marker', 'test_kp') ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) - self.assertRaises(exceptions.CommandError, self.cmd.take_action, - parsed_args) + ex = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-compute-api-version 2.59 or greater is required', + str(ex)) - def test_server_migraton_list_with_changes_since_pre_v259(self): + def test_server_migration_list_with_changes_since_pre_v259(self): self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.58') arglist = [ @@ -3939,8 +3942,13 @@ class TestListMigrationV259(TestListMigration): ('changes_since', '2019-08-09T08:03:25Z') ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) - self.assertRaises(exceptions.CommandError, self.cmd.take_action, - parsed_args) + ex = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-compute-api-version 2.59 or greater is required', + str(ex)) class TestListMigrationV266(TestListMigration): @@ -3954,15 +3962,11 @@ class TestListMigrationV266(TestListMigration): def setUp(self): super(TestListMigrationV266, self).setUp() - self.cmd = server.ListMigration(self.app, None) - self.migrations = self.setup_server_migrations_mock(3) - self.migrations_mock.list.return_value = self.migrations - self.setup_server_migrations_data(self.migrations) self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.66') - def test_server_migraton_list_with_changes_before(self): + def test_server_migration_list_with_changes_before(self): arglist = [ '--status', 'migrating', '--limit', '1', @@ -3996,7 +4000,7 @@ class TestListMigrationV266(TestListMigration): self.assertEqual(self.MIGRATION_COLUMNS, columns) self.assertEqual(tuple(self.data), tuple(data)) - def test_server_migraton_list_with_changes_before_pre_v266(self): + def test_server_migration_list_with_changes_before_pre_v266(self): self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.65') arglist = [ @@ -4008,8 +4012,13 @@ class TestListMigrationV266(TestListMigration): ('changes_before', '2019-08-09T08:03:25Z') ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) - self.assertRaises(exceptions.CommandError, self.cmd.take_action, - parsed_args) + ex = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-compute-api-version 2.66 or greater is required', + str(ex)) class TestListMigrationV280(TestListMigration): @@ -4023,15 +4032,11 @@ class TestListMigrationV280(TestListMigration): def setUp(self): super(TestListMigrationV280, self).setUp() - self.cmd = server.ListMigration(self.app, None) - self.migrations = self.setup_server_migrations_mock(3) - self.migrations_mock.list.return_value = self.migrations - self.setup_server_migrations_data(self.migrations) self.app.client_manager.compute.api_version = api_versions.APIVersion( '2.80') - def test_server_migraton_list_with_project(self): + def test_server_migration_list_with_project(self): arglist = [ '--status', 'migrating', '--limit', '1', @@ -4086,10 +4091,15 @@ class TestListMigrationV280(TestListMigration): ('project_id', '0c2accde-644a-45fa-8c10-e76debc7fbc3') ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) - self.assertRaises(exceptions.CommandError, self.cmd.take_action, - parsed_args) + ex = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-compute-api-version 2.80 or greater is required', + str(ex)) - def test_server_migraton_list_with_user(self): + def test_server_migration_list_with_user(self): arglist = [ '--status', 'migrating', '--limit', '1', @@ -4144,11 +4154,15 @@ class TestListMigrationV280(TestListMigration): ('user_id', 'dd214878-ca12-40fb-b035-fa7d2c1e86d6') ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) + ex = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-compute-api-version 2.80 or greater is required', + str(ex)) - self.assertRaises(exceptions.CommandError, self.cmd.take_action, - parsed_args) - - def test_server_migraton_list_with_project_and_user(self): + def test_server_migration_list_with_project_and_user(self): arglist = [ '--status', 'migrating', '--limit', '1', @@ -4208,8 +4222,13 @@ class TestListMigrationV280(TestListMigration): ('user_id', 'dd214878-ca12-40fb-b035-fa7d2c1e86d6') ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) - self.assertRaises(exceptions.CommandError, self.cmd.take_action, - parsed_args) + ex = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-compute-api-version 2.80 or greater is required', + str(ex)) class TestServerMigrationAbort(TestServer): |
