summaryrefslogtreecommitdiff
path: root/test/ext/mypy/plain_files/sql_operations.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2023-03-08 12:35:27 -0500
committermike bayer <mike_mp@zzzcomputing.com>2023-03-08 21:33:12 +0000
commit1504aa9f9f95964ee73030a76941b8169e04d5bc (patch)
tree2e0dd37bd29356c9a5e03468d384d31a56275521 /test/ext/mypy/plain_files/sql_operations.py
parentbcbb4007bbfa5102d7e53fea8aac50e528d4d1f2 (diff)
downloadsqlalchemy-1504aa9f9f95964ee73030a76941b8169e04d5bc.tar.gz
Use independent TypeVar for ColumnElement.cast
Fixed typing issue where :meth:`.ColumnElement.cast` did not allow a :class:`.TypeEngine` argument independent of the type of the :class:`.ColumnElement` itself, which is the purpose of :meth:`.ColumnElement.cast`. Fixes: #9451 Change-Id: I68119c6a9e8bf896715eea79be2b4f36b1c141de
Diffstat (limited to 'test/ext/mypy/plain_files/sql_operations.py')
-rw-r--r--test/ext/mypy/plain_files/sql_operations.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ext/mypy/plain_files/sql_operations.py b/test/ext/mypy/plain_files/sql_operations.py
index c55442be9..d658f3d50 100644
--- a/test/ext/mypy/plain_files/sql_operations.py
+++ b/test/ext/mypy/plain_files/sql_operations.py
@@ -2,8 +2,11 @@ import typing
from sqlalchemy import and_
from sqlalchemy import Boolean
+from sqlalchemy import cast
from sqlalchemy import column
+from sqlalchemy import DateTime
from sqlalchemy import false
+from sqlalchemy import Float
from sqlalchemy import func
from sqlalchemy import Integer
from sqlalchemy import or_
@@ -75,6 +78,13 @@ and_(c1.notlike("x"))
and_(c1.not_ilike("x"))
and_(c1.notilike("x"))
+# issue #9451
+s1 = c1.cast(Integer)
+s2 = c1.cast(Float)
+s3 = c1.op("foobar")("operand").cast(DateTime)
+s4 = cast(c1, Float)
+s5 = cast(c1.op("foobar")("operand"), DateTime)
+
if typing.TYPE_CHECKING: