summaryrefslogtreecommitdiff
path: root/test/dialect
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2013-06-06 12:52:18 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2013-06-06 12:52:18 -0400
commit555f30d64c23558a13bb95c2c10cb8556b5b21ae (patch)
treec4ff1b1cc9d181be987e2210020d7c39c274d35b /test/dialect
parent9a736a4c6e3a21a4d3682a0bd2b547ef0703a027 (diff)
downloadsqlalchemy-555f30d64c23558a13bb95c2c10cb8556b5b21ae.tar.gz
When querying the information schema on SQL Server 2000, removed
a CAST call that was added in 0.8.1 to help with driver issues, which apparently is not compatible on 2000. The CAST remains in place for SQL Server 2005 and greater. [ticket:2747]
Diffstat (limited to 'test/dialect')
-rw-r--r--test/dialect/test_mssql.py26
1 files changed, 24 insertions, 2 deletions
diff --git a/test/dialect/test_mssql.py b/test/dialect/test_mssql.py
index 4a99ef5f7..b2eb8609b 100644
--- a/test/dialect/test_mssql.py
+++ b/test/dialect/test_mssql.py
@@ -2078,14 +2078,36 @@ class BinaryTest(fixtures.TestBase, AssertsExecutionResults):
fp.close()
return stream
-class InfoCoerceUnicodeTest(fixtures.TestBase):
+from sqlalchemy.dialects.mssql.information_schema import CoerceUnicode, tables
+from sqlalchemy.dialects.mssql import base
+
+class InfoCoerceUnicodeTest(fixtures.TestBase, AssertsCompiledSQL):
def test_info_unicode_coercion(self):
- from sqlalchemy.dialects.mssql.information_schema import CoerceUnicode
dialect = mssql.dialect()
value = CoerceUnicode().bind_processor(dialect)('a string')
assert isinstance(value, util.text_type)
+ def test_info_unicode_cast_no_2000(self):
+ dialect = mssql.dialect()
+ dialect.server_version_info = base.MS_2000_VERSION
+ stmt = tables.c.table_name == 'somename'
+ self.assert_compile(
+ stmt,
+ "[TABLES_1].[TABLE_NAME] = :TABLE_NAME_1",
+ dialect=dialect
+ )
+
+ def test_info_unicode_cast(self):
+ dialect = mssql.dialect()
+ dialect.server_version_info = base.MS_2005_VERSION
+ stmt = tables.c.table_name == 'somename'
+ self.assert_compile(
+ stmt,
+ "[TABLES_1].[TABLE_NAME] = CAST(:TABLE_NAME_1 AS NVARCHAR(max))",
+ dialect=dialect
+ )
+
class ReflectHugeViewTest(fixtures.TestBase):
__only_on__ = 'mssql'