From: Liang Chen Date: Tue, 6 Aug 2013 23:50:27 +0000 (+0800) Subject: Provide a way to clean up testing database X-Git-Tag: 2014.1~257^2 X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=6e1985c0d8386fde50d9bfd30948e9272e1348bf;p=openstack-build%2Fheat-build.git Provide a way to clean up testing database We will need to clean up stacks(hard delete) sometimes in the tests. Resoure, ResourceData, and Event need to be cleaned up as well because of the integrity constraints. blueprint event-persistence Change-Id: I355f7a9909eb3ad3febca62fdb57ecbaab73f2ce --- diff --git a/heat/tests/utils.py b/heat/tests/utils.py index 220ade0c..8462e700 100644 --- a/heat/tests/utils.py +++ b/heat/tests/utils.py @@ -15,6 +15,8 @@ import sys import functools +import sqlalchemy + from heat.common import context from heat.common import exception from heat.engine import environment @@ -91,7 +93,18 @@ def wr_delete_after(test_fn): def setup_dummy_db(): migration.db_sync() engine = get_engine() - conn = engine.connect() + engine.connect() + + +def reset_dummy_db(): + engine = get_engine() + meta = sqlalchemy.MetaData() + meta.reflect(bind=engine) + + for table in reversed(meta.sorted_tables): + if table.name == 'migrate_version': + continue + engine.execute(table.delete()) def dummy_context(user='test_username', tenant_id='test_tenant_id',