diff options
| author | Brian Waldon <brian.waldon@rackspace.com> | 2011-11-07 15:47:09 -0500 |
|---|---|---|
| committer | Brian Waldon <brian.waldon@rackspace.com> | 2011-11-07 15:47:09 -0500 |
| commit | eef2dfa580c1a675efc2af46830547befe89dd0f (patch) | |
| tree | ddd14381135bd6bae8f901cb92ea92e1fce72840 /nova/tests | |
| parent | d90aaaafbc11c8e951ccde27cac11f70ae65c9b2 (diff) | |
Set task state to UPDATING_PASSWORD when needed
Fixes bug 885389
Change-Id: Ia4b91fc8ccc55cac4f484f64c73398e803480eac
Diffstat (limited to 'nova/tests')
| -rw-r--r-- | nova/tests/test_compute.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/nova/tests/test_compute.py b/nova/tests/test_compute.py index b235bcade..3ff3bb425 100644 --- a/nova/tests/test_compute.py +++ b/nova/tests/test_compute.py @@ -362,7 +362,36 @@ class ComputeTestCase(test.TestCase): """Ensure instance can have its admin password set""" instance_id = self._create_instance() self.compute.run_instance(self.context, instance_id) + db.instance_update(self.context, instance_id, + {'task_state': task_states.UPDATING_PASSWORD}) + + inst_ref = db.instance_get(self.context, instance_id) + self.assertEqual(inst_ref['vm_state'], vm_states.ACTIVE) + self.assertEqual(inst_ref['task_state'], task_states.UPDATING_PASSWORD) + self.compute.set_admin_password(self.context, instance_id) + + inst_ref = db.instance_get(self.context, instance_id) + self.assertEqual(inst_ref['vm_state'], vm_states.ACTIVE) + self.assertEqual(inst_ref['task_state'], None) + + self.compute.terminate_instance(self.context, instance_id) + + def test_set_admin_password_api(self): + """Ensure instance can have its admin password set""" + instance_id = self._create_instance() + self.compute.run_instance(self.context, instance_id) + + inst_ref = db.instance_get(self.context, instance_id) + self.assertEqual(inst_ref['vm_state'], vm_states.ACTIVE) + self.assertEqual(inst_ref['task_state'], None) + + self.compute_api.set_admin_password(self.context, instance_id) + + inst_ref = db.instance_get(self.context, instance_id) + self.assertEqual(inst_ref['vm_state'], vm_states.ACTIVE) + self.assertEqual(inst_ref['task_state'], task_states.UPDATING_PASSWORD) + self.compute.terminate_instance(self.context, instance_id) def test_inject_file(self): |
