summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/testing/requirements.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2014-07-27 18:46:20 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2014-07-27 18:46:20 -0400
commit54592942c4a9c3d6d891519082555f8081026445 (patch)
tree29abeff4dee0960284e03558ff464ffbf41cc784 /lib/sqlalchemy/testing/requirements.py
parent35551841c522d8eb20f8e20243a5510de9d95dfc (diff)
downloadsqlalchemy-54592942c4a9c3d6d891519082555f8081026445.tar.gz
- add support for tags, including include/exclude support.
simplify tox again now that we can exclude tests more easily
Diffstat (limited to 'lib/sqlalchemy/testing/requirements.py')
-rw-r--r--lib/sqlalchemy/testing/requirements.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/lib/sqlalchemy/testing/requirements.py b/lib/sqlalchemy/testing/requirements.py
index fbb0d63e2..a04bcbbdd 100644
--- a/lib/sqlalchemy/testing/requirements.py
+++ b/lib/sqlalchemy/testing/requirements.py
@@ -16,6 +16,7 @@ to provide specific inclusion/exclusions.
"""
from . import exclusions
+from .. import util
class Requirements(object):
@@ -617,6 +618,38 @@ class SuiteRequirements(Requirements):
return exclusions.skip_if(
lambda config: config.options.low_connections)
+ @property
+ def timing_intensive(self):
+ return exclusions.requires_tag("timing_intensive")
+
+ @property
+ def memory_intensive(self):
+ return exclusions.requires_tag("memory_intensive")
+
+ @property
+ def threading_with_mock(self):
+ """Mark tests that use threading and mock at the same time - stability
+ issues have been observed with coverage + python 3.3
+
+ """
+ return exclusions.skip_if(
+ lambda config: util.py3k and config.options.has_coverage,
+ "Stability issues with coverage + py3k"
+ )
+
+ @property
+ def no_coverage(self):
+ """Test should be skipped if coverage is enabled.
+
+ This is to block tests that exercise libraries that seem to be
+ sensitive to coverage, such as Postgresql notice logging.
+
+ """
+ return exclusions.skip_if(
+ lambda config: config.options.has_coverage,
+ "Issues observed when coverage is enabled"
+ )
+
def _has_mysql_on_windows(self, config):
return False