summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2014-03-03 13:55:36 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2014-03-03 13:55:36 -0500
commitf94122757407b386ad695ca2e339d5d3d234f53c (patch)
tree388b6e60655bb2a9c77d224e7a8c250dd043d310
parent23d9778514fef648285010a36009fca9bb953cad (diff)
downloadsqlalchemy-f94122757407b386ad695ca2e339d5d3d234f53c.tar.gz
hey we can use unittest.SkipTest
-rw-r--r--lib/sqlalchemy/testing/plugin/noseplugin.py6
-rw-r--r--lib/sqlalchemy/testing/plugin/plugin_base.py11
-rw-r--r--lib/sqlalchemy/testing/plugin/pytestplugin.py9
3 files changed, 8 insertions, 18 deletions
diff --git a/lib/sqlalchemy/testing/plugin/noseplugin.py b/lib/sqlalchemy/testing/plugin/noseplugin.py
index bbc4beaf9..a68eb88cf 100644
--- a/lib/sqlalchemy/testing/plugin/noseplugin.py
+++ b/lib/sqlalchemy/testing/plugin/noseplugin.py
@@ -14,7 +14,6 @@ way (e.g. as a package-less import).
import os
from nose.plugins import Plugin
-from nose import SkipTest
fixtures = None
# no package imports yet! this prevents us from tripping coverage
@@ -79,10 +78,7 @@ class NoseSQLAlchemy(Plugin):
if not isinstance(ctx, type) \
or not issubclass(ctx, fixtures.TestBase):
return
- try:
- plugin_base.start_test_class(ctx)
- except plugin_base.GenericSkip as gs:
- raise SkipTest(gs.message)
+ plugin_base.start_test_class(ctx)
def stopContext(self, ctx):
if not isinstance(ctx, type) \
diff --git a/lib/sqlalchemy/testing/plugin/plugin_base.py b/lib/sqlalchemy/testing/plugin/plugin_base.py
index 460494719..50efdfcf0 100644
--- a/lib/sqlalchemy/testing/plugin/plugin_base.py
+++ b/lib/sqlalchemy/testing/plugin/plugin_base.py
@@ -13,7 +13,7 @@ via py.test.
"""
from __future__ import absolute_import
-
+from unittest import SkipTest
import sys
import re
@@ -111,9 +111,6 @@ def post_begin():
assertions, warnings, profiling, config
from sqlalchemy import util
-class GenericSkip(Exception):
- pass
-
def _log(opt_str, value, parser):
global logging
@@ -287,8 +284,6 @@ def _reverse_topological(options, file_config):
randomize_unitofwork()
-
-
@post
def _post_setup_options(opt, file_config):
from sqlalchemy.testing import config
@@ -386,7 +381,7 @@ def _do_skips(cls):
if getattr(cls, '__skip_if__', False):
for c in getattr(cls, '__skip_if__'):
if c():
- raise GenericSkip("'%s' skipped by %s" % (
+ raise SkipTest("'%s' skipped by %s" % (
cls.__name__, c.__name__)
)
@@ -399,7 +394,7 @@ def _do_skips(cls):
if not all_configs:
- raise GenericSkip(
+ raise SkipTest(
"'%s' unsupported on DB implementation %s%s" % (
cls.__name__,
", ".join("'%s' = %s" % (
diff --git a/lib/sqlalchemy/testing/plugin/pytestplugin.py b/lib/sqlalchemy/testing/plugin/pytestplugin.py
index 0576ba6c5..352cbbd5f 100644
--- a/lib/sqlalchemy/testing/plugin/pytestplugin.py
+++ b/lib/sqlalchemy/testing/plugin/pytestplugin.py
@@ -88,6 +88,9 @@ def pytest_runtest_setup(item):
# we have to tear that out.
global _current_class
+ if not isinstance(item, pytest.Function):
+ return
+
# ... so we're doing a little dance here to figure it out...
if item.parent.parent is not _current_class:
@@ -116,11 +119,7 @@ def test_teardown(item):
plugin_base.after_test(item)
def class_setup(item):
- try:
- plugin_base.start_test_class(item.cls)
- except plugin_base.GenericSkip as gs:
- print(gs)
- pytest.skip(str(gs))
+ plugin_base.start_test_class(item.cls)
def class_teardown(item):
plugin_base.stop_test_class(item.cls)