diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2023-03-08 12:35:27 -0500 |
---|---|---|
committer | mike bayer <mike_mp@zzzcomputing.com> | 2023-03-08 21:33:12 +0000 |
commit | 1504aa9f9f95964ee73030a76941b8169e04d5bc (patch) | |
tree | 2e0dd37bd29356c9a5e03468d384d31a56275521 /test/ext/mypy/plain_files/sql_operations.py | |
parent | bcbb4007bbfa5102d7e53fea8aac50e528d4d1f2 (diff) | |
download | sqlalchemy-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.py | 10 |
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: |