from sqlalchemy import testing
from sqlalchemy import util
from sqlalchemy.databases import mssql
+from sqlalchemy.dialects.mssql.base import Try_Cast
from sqlalchemy.sql import column
from sqlalchemy.sql import table
from sqlalchemy.testing import AssertsCompiledSQL
)
)
+ @testing.provide_metadata
+ def test_try_cast(self):
+ engine = engines.testing_engine()
+ metadata = self.metadata
+ t1 = Table(
+ "t1",
+ metadata,
+ Column("id", Integer, primary_key=True),
+ implicit_returning=False,
+ )
+ metadata.create_all(engine)
+
+ with self.sql_execution_asserter(engine) as asserter:
+ engine.execute(t1.select([Try_Cast(t1.id, Integer)]))
+
+ asserter.assert_(
+ CursorSQL("SELECT TRY_CAST(id AS Integer) FROM t1"),
+ )
+
@testing.provide_metadata
def test_insertid_schema(self):
meta = self.metadata