nova/nova/tests/unit/api/openstack
Artom Lifshitz a90fe19512 Avoid error 500 on shelve task_state race
When shelving a server and saving its new SHELVING task state, we
expect the current task state to be None and do not handle any
UnexpectedTaskStateError exceptions that the database layer may throw
at us. In those cases, we return an error 500 to the user, when in
actuality an error 409 conflict would be more appropriate. This
patch makes the API layer handle UnexpectedTaskStateError exceptions
and return a 409 to the user.

NOTE(artom) Conflict in imports in
nova/tests/unit/api/openstack/compute/test_shelve.py due to using
oslo's uuidsentinel as of 8e1ca5bf34 in
stein.

Closes-bug: 1850694
Change-Id: Ie0b421cd5d3a5781c1dd09fab4ed013ece0f939d
(cherry picked from commit a423d8b277)
(cherry picked from commit 32dbd2f585)
(cherry picked from commit 8ee59604dc)
2019-11-01 20:20:52 -04:00
..
compute Avoid error 500 on shelve task_state race 2019-11-01 20:20:52 -04:00
placement Harden placement init under wsgi 2018-11-12 11:30:32 +00:00
__init__.py
common.py [python3] Webob request body should be bytes 2015-12-28 13:51:29 -05:00
fakes.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
test_api_version_request.py Use assert(Not)Equal instead of assertTrue(A == X) 2016-06-03 16:53:15 +01:00
test_auth.py Noauth should also use request_id from compute_req_id.py 2018-04-04 14:21:01 -04:00
test_common.py Fix TypeError of _get_project_id when project_id is None 2017-11-21 22:21:12 -05:00
test_faults.py [Py34] api.openstack.test_faults.TestFaultWrapper 2015-12-10 20:56:42 +00:00
test_legacy_v2_compatible_wrapper.py Trivial-Fix: Fix typos 2016-06-13 06:41:08 +00:00
test_mapper.py [Py34] Enable api.openstack.test_mapper unit test 2015-10-05 18:59:28 +03:00
test_requestlog.py log test: use fixtures.StandardLogging in setUp 2018-01-04 10:38:49 +08:00
test_wsgi.py Make accept-language tests work with webob 1.8.x 2018-04-25 16:26:53 +01:00