diff options
| author | Jenkins <jenkins@review.openstack.org> | 2013-05-30 02:12:13 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2013-05-30 02:12:13 +0000 |
| commit | c2d23ceb84cddd754a0e7d8b9ccecd8046c91805 (patch) | |
| tree | a3e78b2339abf2bfa3b4bde98f7e2ae0f2d911e7 | |
| parent | 59fe8888de436d467525fc3e732700015adf106f (diff) | |
| parent | 62ca3783ce4fcc0b03e96936972abc83b54c772f (diff) | |
| download | nova-c2d23ceb84cddd754a0e7d8b9ccecd8046c91805.tar.gz nova-c2d23ceb84cddd754a0e7d8b9ccecd8046c91805.tar.xz nova-c2d23ceb84cddd754a0e7d8b9ccecd8046c91805.zip | |
Merge "No relevant message when stop a stopped VM"
| -rw-r--r-- | nova/compute/api.py | 2 | ||||
| -rw-r--r-- | nova/tests/compute/test_compute.py | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/nova/compute/api.py b/nova/compute/api.py index 7d0862b47..19c59bbd5 100644 --- a/nova/compute/api.py +++ b/nova/compute/api.py @@ -1342,7 +1342,7 @@ class API(base.Base): @check_instance_lock @check_instance_host @check_instance_state(vm_state=[vm_states.ACTIVE, vm_states.RESCUED, - vm_states.ERROR, vm_states.STOPPED], + vm_states.ERROR], task_state=[None]) def stop(self, context, instance, do_cast=True): """Stop an instance.""" diff --git a/nova/tests/compute/test_compute.py b/nova/tests/compute/test_compute.py index 64edb4811..afb7d4c12 100644 --- a/nova/tests/compute/test_compute.py +++ b/nova/tests/compute/test_compute.py @@ -5150,6 +5150,16 @@ class ComputeAPITestCase(BaseTestCase): db.instance_destroy(self.context, instance['uuid']) + def test_stop_a_stopped_inst(self): + instance = jsonutils.to_primitive(self._create_fake_instance( + {'vm_state': vm_states.STOPPED})) + + self.assertRaises(exception.InstanceInvalidState, + self.compute_api.stop, + self.context, instance) + + db.instance_destroy(self.context, instance['uuid']) + def test_stop_no_host(self): instance = self._create_fake_instance(params={'host': ''}) |
