summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2014-12-06 13:29:32 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2014-12-06 13:33:57 -0500
commitc24423bc2e3fd227bf4a86599e28407bd190ee9e (patch)
treec6c69f26261a6bc69c1420c26732e39bdd891b7e
parent95cd2003bbe1b5da2d3c78ac845855126e03de2f (diff)
downloadsqlalchemy-c24423bc2e3fd227bf4a86599e28407bd190ee9e.tar.gz
- enhance only_on() to work with compound specs
- fix "temporary_tables" requirement
-rw-r--r--lib/sqlalchemy/testing/exclusions.py2
-rw-r--r--lib/sqlalchemy/testing/requirements.py5
-rw-r--r--test/requirements.py12
-rw-r--r--test/sql/test_metadata.py3
4 files changed, 17 insertions, 5 deletions
diff --git a/lib/sqlalchemy/testing/exclusions.py b/lib/sqlalchemy/testing/exclusions.py
index f94724608..0aff43ae1 100644
--- a/lib/sqlalchemy/testing/exclusions.py
+++ b/lib/sqlalchemy/testing/exclusions.py
@@ -425,7 +425,7 @@ def skip(db, reason=None):
def only_on(dbs, reason=None):
return only_if(
- OrPredicate([SpecPredicate(db) for db in util.to_list(dbs)])
+ OrPredicate([Predicate.as_predicate(db) for db in util.to_list(dbs)])
)
diff --git a/lib/sqlalchemy/testing/requirements.py b/lib/sqlalchemy/testing/requirements.py
index da3e3128a..5744431cb 100644
--- a/lib/sqlalchemy/testing/requirements.py
+++ b/lib/sqlalchemy/testing/requirements.py
@@ -323,6 +323,11 @@ class SuiteRequirements(Requirements):
return exclusions.closed()
@property
+ def temporary_tables(self):
+ """target database supports temporary tables"""
+ return exclusions.open()
+
+ @property
def temporary_views(self):
"""target database supports temporary views"""
return exclusions.closed()
diff --git a/test/requirements.py b/test/requirements.py
index d1b7913f0..22ac13fe8 100644
--- a/test/requirements.py
+++ b/test/requirements.py
@@ -127,9 +127,15 @@ class DefaultRequirements(SuiteRequirements):
)
@property
- def temporary_table(self):
- """Target database must support CREATE TEMPORARY TABLE"""
- return exclusions.open()
+ def temporary_tables(self):
+ """target database supports temporary tables"""
+ return skip_if(
+ ["mssql"], "sql server has some other syntax?"
+ )
+
+ @property
+ def temp_table_reflection(self):
+ return self.temporary_tables
@property
def reflectable_autoincrement(self):
diff --git a/test/sql/test_metadata.py b/test/sql/test_metadata.py
index 0aa5d7305..52ecf88c5 100644
--- a/test/sql/test_metadata.py
+++ b/test/sql/test_metadata.py
@@ -1160,9 +1160,10 @@ class InfoTest(fixtures.TestBase):
t = Table('x', MetaData(), info={'foo': 'bar'})
eq_(t.info, {'foo': 'bar'})
+
class TableTest(fixtures.TestBase, AssertsCompiledSQL):
- @testing.requires.temporary_table
+ @testing.requires.temporary_tables
@testing.skip_if('mssql', 'different col format')
def test_prefixes(self):
from sqlalchemy import Table