diff options
author | chrisw <unknown> | 2010-09-09 16:37:27 +0100 |
---|---|---|
committer | chrisw <unknown> | 2010-09-09 16:37:27 +0100 |
commit | 960c978da9e81717b87b18608220ef790edbfe4c (patch) | |
tree | d3b2b0e224b667b878952e8326fde32cfd7c1a98 /migrate/tests/fixture/database.py | |
parent | 70e52901b24d6fe40c1e1464c033091929e97017 (diff) | |
download | sqalchemy-migrate-960c978da9e81717b87b18608220ef790edbfe4c.tar.gz |
give better feedback when errors occur in _setup or _teardown
Diffstat (limited to 'migrate/tests/fixture/database.py')
-rw-r--r-- | migrate/tests/fixture/database.py | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/migrate/tests/fixture/database.py b/migrate/tests/fixture/database.py index 90668ad..2c5d11f 100644 --- a/migrate/tests/fixture/database.py +++ b/migrate/tests/fixture/database.py @@ -79,10 +79,26 @@ def usedb(supported=None, not_supported=None): for url in my_urls: log.debug("Running test with engine %s", url) try: - self._setup(url) - f(self, *a, **kw) + try: + self._setup(url) + except Exception,e: + setup_exception=e + else: + setup_exception=None + f(self, *a, **kw) finally: - self._teardown() + try: + self._teardown() + except Exception,e: + teardown_exception=e + else: + teardown_exception=None + if setup_exception or teardown_exception: + raise RuntimeError(( + 'Exception during _setup/_teardown:\n' + 'setup: %r\n' + 'teardown: %r\n' + )%(setup_exception,teardown_exception)) return dec |