diff options
| author | Jenkins <jenkins@review.openstack.org> | 2016-09-11 05:50:40 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2016-09-11 05:50:40 +0000 |
| commit | 30afdb9684789869ee42881cb14fa67683babce0 (patch) | |
| tree | 585a0f6fd22b1821f5af4e7a561a566bc0f35a10 /openstackclient/tests | |
| parent | cc5379b55cc74740b2451b9445bb752d6230862e (diff) | |
| parent | 10e665a148efec0cf75bd5dd07decf23a36a52e0 (diff) | |
| download | python-openstackclient-30afdb9684789869ee42881cb14fa67683babce0.tar.gz | |
Merge "Error handling of multi REST API calls for "snapshot set" command"
Diffstat (limited to 'openstackclient/tests')
| -rw-r--r-- | openstackclient/tests/unit/volume/v2/test_snapshot.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/openstackclient/tests/unit/volume/v2/test_snapshot.py b/openstackclient/tests/unit/volume/v2/test_snapshot.py index 333d8d72..d355662d 100644 --- a/openstackclient/tests/unit/volume/v2/test_snapshot.py +++ b/openstackclient/tests/unit/volume/v2/test_snapshot.py @@ -376,6 +376,55 @@ class TestSnapshotSet(TestSnapshot): self.snapshot.id, "error") self.assertIsNone(result) + def test_volume_set_state_failed(self): + self.snapshots_mock.reset_state.side_effect = exceptions.CommandError() + arglist = [ + '--state', 'error', + self.snapshot.id + ] + verifylist = [ + ('state', 'error'), + ('snapshot', self.snapshot.id) + ] + + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + try: + self.cmd.take_action(parsed_args) + self.fail('CommandError should be raised.') + except exceptions.CommandError as e: + self.assertEqual('One or more of the set operations failed', + str(e)) + self.snapshots_mock.reset_state.assert_called_once_with( + self.snapshot.id, 'error') + + def test_volume_set_name_and_state_failed(self): + self.snapshots_mock.reset_state.side_effect = exceptions.CommandError() + arglist = [ + '--state', 'error', + "--name", "new_snapshot", + self.snapshot.id + ] + verifylist = [ + ('state', 'error'), + ("name", "new_snapshot"), + ('snapshot', self.snapshot.id) + ] + + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + try: + self.cmd.take_action(parsed_args) + self.fail('CommandError should be raised.') + except exceptions.CommandError as e: + self.assertEqual('One or more of the set operations failed', + str(e)) + kwargs = { + "name": "new_snapshot", + } + self.snapshots_mock.update.assert_called_once_with( + self.snapshot.id, **kwargs) + self.snapshots_mock.reset_state.assert_called_once_with( + self.snapshot.id, 'error') + class TestSnapshotShow(TestSnapshot): |
