diff options
| author | jay <jayadityagupta11@gmail.com> | 2020-04-21 14:23:58 +0200 |
|---|---|---|
| committer | Stephen Finucane <sfinucan@redhat.com> | 2020-10-13 14:17:28 +0100 |
| commit | 08b0e5855be5dc12a2fd04c5c92027c8a85a0d00 (patch) | |
| tree | 8fa655d0606ce4027a83908bc214758b7132f8e8 /openstackclient/tests/unit/compute | |
| parent | 1c3cf11331a5734700e1c333c98928ab933c0e92 (diff) | |
| download | python-openstackclient-08b0e5855be5dc12a2fd04c5c92027c8a85a0d00.tar.gz | |
Add 'server migration force complete' command
This is equivalent to novaclient's 'live-migration-force-complete'
command.
Change-Id: Ic4dc639afa16cdf8c5a46774895e850d92985292
Story: 2007513
Task: 39293
Diffstat (limited to 'openstackclient/tests/unit/compute')
| -rw-r--r-- | openstackclient/tests/unit/compute/v2/test_server.py | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/openstackclient/tests/unit/compute/v2/test_server.py b/openstackclient/tests/unit/compute/v2/test_server.py index 9ac29352..3b98c873 100644 --- a/openstackclient/tests/unit/compute/v2/test_server.py +++ b/openstackclient/tests/unit/compute/v2/test_server.py @@ -4263,6 +4263,57 @@ class TestServerMigrationAbort(TestServer): str(ex)) +class TestServerMigrationForceComplete(TestServer): + + def setUp(self): + super(TestServerMigrationForceComplete, self).setUp() + + self.server = compute_fakes.FakeServer.create_one_server() + + # Return value for utils.find_resource for server. + self.servers_mock.get.return_value = self.server + + # Get the command object to test + self.cmd = server.ForceCompleteMigration(self.app, None) + + def test_migration_force_complete(self): + self.app.client_manager.compute.api_version = api_versions.APIVersion( + '2.22') + + arglist = [ + self.server.id, + '2', # arbitrary migration ID + ] + verifylist = [] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + result = self.cmd.take_action(parsed_args) + + self.servers_mock.get.assert_called_with(self.server.id) + self.server_migrations_mock.live_migrate_force_complete\ + .assert_called_with(self.server.id, '2',) + self.assertIsNone(result) + + def test_migration_force_complete_pre_v222(self): + self.app.client_manager.compute.api_version = api_versions.APIVersion( + '2.21') + + arglist = [ + self.server.id, + '2', # arbitrary migration ID + ] + verifylist = [] + 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.22 or greater is required', + str(ex)) + + class TestServerPause(TestServer): def setUp(self): |
