aboutsummaryrefslogtreecommitdiff
path: root/gn_auth/auth/db/sqlite3.py
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2023-08-08 05:17:42 +0300
committerFrederick Muriuki Muriithi2023-08-08 05:17:42 +0300
commite4b8116c98590f7e38383227eede537a1fdc44ed (patch)
tree6ddf0cfb06d55cc755a4f3e12668d6f623969a4b /gn_auth/auth/db/sqlite3.py
parentb2c23d6ddcb581a1dfd44f3a695aab15b35c9b63 (diff)
downloadgn-auth-e4b8116c98590f7e38383227eede537a1fdc44ed.tar.gz
Fix type-checking errors
Diffstat (limited to 'gn_auth/auth/db/sqlite3.py')
-rw-r--r--gn_auth/auth/db/sqlite3.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/gn_auth/auth/db/sqlite3.py b/gn_auth/auth/db/sqlite3.py
index be9eb2f..66b74c9 100644
--- a/gn_auth/auth/db/sqlite3.py
+++ b/gn_auth/auth/db/sqlite3.py
@@ -2,13 +2,27 @@
import sqlite3
import logging
import contextlib
-from typing import Any, Callable, Iterator
+from typing import Any, Protocol, Callable, Iterator
import traceback
from flask import current_app
-from .protocols import DbCursor, DbConnection
+from .protocols import DbCursor
+
+class DbConnection(Protocol):
+ """Type annotation for a generic database connection object."""
+ def cursor(self) -> Any:
+ """A cursor object"""
+ ...
+
+ def commit(self) -> Any:
+ """Commit the transaction."""
+ ...
+
+ def rollback(self) -> Any:
+ """Rollback the transaction."""
+ ...
@contextlib.contextmanager
def connection(db_path: str, row_factory: Callable = sqlite3.Row) -> Iterator[DbConnection]: