From: Leonel Atencio Date: Fri, 26 Jul 2019 18:42:35 +0000 (-0500) Subject: Fixes: #4782 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a093c3c8ee24edd840ca791c30ea779c861abeb7;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git Fixes: #4782 Also, not ntirely sure this is the right place for the test. --- diff --git a/test/dialect/mssql/test_query.py b/test/dialect/mssql/test_query.py index 4ecf0634c9..083f853d20 100644 --- a/test/dialect/mssql/test_query.py +++ b/test/dialect/mssql/test_query.py @@ -17,6 +17,7 @@ from sqlalchemy import Table 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 @@ -413,6 +414,25 @@ class QueryTest(testing.AssertsExecutionResults, fixtures.TestBase): ) ) + @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