]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
Provide a way to clean up testing database
authorLiang Chen <cbjchen@cn.ibm.com>
Tue, 6 Aug 2013 23:50:27 +0000 (07:50 +0800)
committerLiang Chen <cbjchen@cn.ibm.com>
Thu, 8 Aug 2013 01:41:26 +0000 (09:41 +0800)
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

heat/tests/utils.py

index 220ade0cc4d9a22437e249663a694fb2bc7083b1..8462e700be5395b5477b9cb57fe64619869b6036 100644 (file)
@@ -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',