nova/nova/tests/functional/regressions
Matt Riedemann 032937ce51 Add regression test for quota decrement bug 1678326
This was spotted from someone validating the fix for
bug 1670627. They reported that even though they failed
to delete an instance in ERROR state that was in cell0,
the quota usage was decremented.

This is because we committed the quota reservation
to decrement the usage before actually attempting to destroy
the instance, rather than upon successful deletion.

The rollback after InstanceNotFound is a noop because of
how the Quotas.rollback method noops if the reservations
were already committed. That is in itself arguably a bug,
but not fixed here, especially since the counting quotas
work in Pike will remove all of the reservations commit and
rollback code.

Change-Id: I12d1fa1a10f9014863123ac9cc3c63ddfb48378e
Partial-Bug: #1678326
2017-04-05 15:15:20 -04:00
..
README.rst add a place for functional test to block specific regressions 2016-02-24 18:14:27 +00:00
__init__.py add a place for functional test to block specific regressions 2016-02-24 18:14:27 +00:00
test_bug_1522536.py Enable Neutron by default 2017-01-04 10:09:00 -05:00
test_bug_1541691.py Remove unused conf 2016-09-02 09:02:23 +08:00
test_bug_1548980.py Enable Neutron by default 2017-01-04 10:09:00 -05:00
test_bug_1552888.py Trivial-Fix: Fix typos 2016-06-13 06:41:08 +00:00
test_bug_1554631.py Fixes to get all functional tests working on py35 2017-01-14 13:06:56 -05:00
test_bug_1558866.py Enable Neutron by default 2017-01-04 10:09:00 -05:00
test_bug_1568208.py Fix generation of Guru Meditation Report 2016-04-13 17:00:32 +03:00
test_bug_1595962.py Enable Neutron by default 2017-01-04 10:09:00 -05:00
test_bug_1620248.py Enable Neutron by default 2017-01-04 10:09:00 -05:00
test_bug_1627838.py Stop overwriting thread local context in ClientRouter 2016-09-26 20:49:22 +00:00
test_bug_1670627.py Temporarily untarget context when deleting from cell0 2017-03-13 13:45:03 -04:00
test_bug_1671648.py Fix functional regression/recreate test for bug 1671648 2017-03-16 19:39:37 -04:00
test_bug_1678326.py Add regression test for quota decrement bug 1678326 2017-04-05 15:15:20 -04:00

README.rst

Tests for Specific Regressions

When we have a bug reported by end users that we can write a full stack reproduce on, we should. And we should keep a regression test for that bug in our tree. It can be deleted at some future date if needed, but largely should not be changed.

Writing Regression Tests

  • These should be full stack tests which inherit from nova.test.TestCase directly. (This is to prevent coupling with other tests).
  • They should setup a full stack cloud in their setUp via fixtures
  • They should each live in a file which is named test_bug######.py

Writing Tests Before the Bug is Fixed

TODO describe writing and landing tests before the bug is fixed as a reproduce.