summaryrefslogtreecommitdiff
path: root/test/ext/mypy/plain_files/sessionmakers.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/ext/mypy/plain_files/sessionmakers.py')
-rw-r--r--test/ext/mypy/plain_files/sessionmakers.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/ext/mypy/plain_files/sessionmakers.py b/test/ext/mypy/plain_files/sessionmakers.py
index ce9b76638..2d02f2a3f 100644
--- a/test/ext/mypy/plain_files/sessionmakers.py
+++ b/test/ext/mypy/plain_files/sessionmakers.py
@@ -86,3 +86,27 @@ def main() -> None:
sess = scoped_fac()
# EXPECTED_TYPE: MySession
reveal_type(sess)
+
+
+def test_8837_sync() -> None:
+ sm = sessionmaker()
+
+ # EXPECTED_TYPE: sessionmaker[Session]
+ reveal_type(sm)
+
+ session = sm()
+
+ # EXPECTED_TYPE: Session
+ reveal_type(session)
+
+
+def test_8837_async() -> None:
+ as_ = async_sessionmaker()
+
+ # EXPECTED_TYPE: async_sessionmaker[AsyncSession]
+ reveal_type(as_)
+
+ async_session = as_()
+
+ # EXPECTED_TYPE: AsyncSession
+ reveal_type(async_session)