diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2013-06-06 12:52:18 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2013-06-06 12:52:18 -0400 |
| commit | 555f30d64c23558a13bb95c2c10cb8556b5b21ae (patch) | |
| tree | c4ff1b1cc9d181be987e2210020d7c39c274d35b /test/dialect | |
| parent | 9a736a4c6e3a21a4d3682a0bd2b547ef0703a027 (diff) | |
| download | sqlalchemy-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.py | 26 |
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' |
