aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/tests/tools.py
diff options
context:
space:
mode:
authorChristopher Allan Webber <cwebber@dustycloud.org>2011-06-06 07:45:18 -0500
committerChristopher Allan Webber <cwebber@dustycloud.org>2011-06-06 07:45:18 -0500
commit3aa4c668b9bfe53ed58d4ae21ed91210df7ad9ff (patch)
treeb0407aaae7738fee561e4d3ce3408aff210ba29b /mediagoblin/tests/tools.py
parent66471f0ee4740daeac2b8a42b88dadec630b8d67 (diff)
downloadmediagoblin-3aa4c668b9bfe53ed58d4ae21ed91210df7ad9ff.tar.lz
mediagoblin-3aa4c668b9bfe53ed58d4ae21ed91210df7ad9ff.tar.xz
mediagoblin-3aa4c668b9bfe53ed58d4ae21ed91210df7ad9ff.zip
A setup_fresh_app decorator which should make writing tests a bit easier.
Setting test_register_views() to use it also.
Diffstat (limited to 'mediagoblin/tests/tools.py')
-rw-r--r--mediagoblin/tests/tools.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/mediagoblin/tests/tools.py b/mediagoblin/tests/tools.py
index a51402e9..342b54b7 100644
--- a/mediagoblin/tests/tools.py
+++ b/mediagoblin/tests/tools.py
@@ -21,6 +21,8 @@ import os, shutil
from paste.deploy import appconfig, loadapp
from webtest import TestApp
+from mediagoblin import util
+from mediagoblin.decorators import _make_safe
from mediagoblin.db.open import setup_connection_and_db_from_config
@@ -91,3 +93,17 @@ def get_test_app(dump_old_app=True):
'config:' + TEST_APP_CONFIG)
return TestApp(test_app)
+
+
+def setup_fresh_app(func):
+ """
+ Decorator to setup a fresh test application for this function.
+
+ Cleans out test buckets and passes in a new, fresh test_app.
+ """
+ def wrapper(*args, **kwargs):
+ test_app = get_test_app()
+ util.clear_test_buckets()
+ return func(test_app, *args, **kwargs)
+
+ return _make_safe(wrapper, func)