diff options
author | mike bayer <mike_mp@zzzcomputing.com> | 2022-02-13 20:37:12 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@ci3.zzzcomputing.com> | 2022-02-13 20:37:12 +0000 |
commit | d6b3c82b0c329730bcaff42b4bb39dba83acb536 (patch) | |
tree | d6b7f744a35c8d89615eeb0504ee7a4193f95642 /test/ext/mypy/plugin_files/enum_col.py | |
parent | 260ade78a70d51378de9e7b9456bfe6218859b6c (diff) | |
parent | e545298e35ea9f126054b337e4b5ba01988b29f7 (diff) | |
download | sqlalchemy-d6b3c82b0c329730bcaff42b4bb39dba83acb536.tar.gz |
Merge "establish mypy / typing approach for v2.0" into main
Diffstat (limited to 'test/ext/mypy/plugin_files/enum_col.py')
-rw-r--r-- | test/ext/mypy/plugin_files/enum_col.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/test/ext/mypy/plugin_files/enum_col.py b/test/ext/mypy/plugin_files/enum_col.py new file mode 100644 index 000000000..cfea38803 --- /dev/null +++ b/test/ext/mypy/plugin_files/enum_col.py @@ -0,0 +1,40 @@ +import enum +from typing import Optional + +from sqlalchemy import Column +from sqlalchemy import Enum +from sqlalchemy.orm import declarative_base + + +class MyEnum(enum.Enum): + one = 1 + two = 2 + three = 3 + + +Base = declarative_base() + +one, two, three = "one", "two", "three" + + +class TestEnum(Base): + __tablename__ = "test_enum" + + e1: str = Column(Enum("one", "two", "three")) + + e2: MyEnum = Column(Enum(MyEnum)) + + e3 = Column(Enum(one, two, three)) + + e4 = Column(Enum(MyEnum)) + + +t1 = TestEnum(e1="two", e2=MyEnum.three, e3="one", e4=MyEnum.one) + +x: str = t1.e1 + +y: MyEnum = t1.e2 + +z: Optional[str] = t1.e3 + +z2: Optional[MyEnum] = t1.e4 |