str(
expression.select(
[expression.cast(
- expression.literal_column("'test unicode returns'"),sqltypes.VARCHAR(60))
+ expression.literal_column("'test unicode returns'"),sqltypes.Unicode(60))
]).compile(dialect=self)
)
)
row = cursor.fetchone()
unicode_for_unicode = isinstance(row[0], unicode)
cursor.close()
-
+
if unicode_for_unicode and not unicode_for_varchar:
return "conditional"
else:
def test_native_unicode(self):
"""assert expected values for 'native unicode' mode"""
-
+
+ if testing.against('mssql+pyodbc') and not testing.db.dialect.freetds:
+ assert testing.db.dialect.returns_unicode_strings == 'conditional'
+ return
+
assert testing.db.dialect.returns_unicode_strings == \
((testing.db.name, testing.db.driver) in \
(
'drole de petit voix m?a reveille. Elle disait: < S?il vous plait? '
'dessine-moi un mouton! >'
)
+ elif testing.against('mssql+pyodbc') and not testing.db.dialect.freetds:
+ # TODO: no clue what this is
+ eq_(
+ x,
+ u'Alors vous imaginez ma surprise, au lever du jour, quand une '
+ u'drle de petit voix ma rveill. Elle disait: Sil vous plat '
+ u'dessine-moi un mouton! '
+ )
elif engine.dialect.returns_unicode_strings:
eq_(x, unicodedata)
else: