aboutsummaryrefslogtreecommitdiff
path: root/gn_auth/auth/authorisation/privileges.py
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2024-06-10 13:40:09 -0500
committerFrederick Muriuki Muriithi2024-06-10 13:40:09 -0500
commitf427b554c033b6c9d1d37fc420988a14fdc526a9 (patch)
tree18a0803c7802ac03b2059bfb767b8711a71d6135 /gn_auth/auth/authorisation/privileges.py
parent342933a0221aa0bbe0243e30d21cdfe5539bc269 (diff)
downloadgn-auth-f427b554c033b6c9d1d37fc420988a14fdc526a9.tar.gz
Provide functions to convert DB rows into data objects.
Diffstat (limited to 'gn_auth/auth/authorisation/privileges.py')
-rw-r--r--gn_auth/auth/authorisation/privileges.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/gn_auth/auth/authorisation/privileges.py b/gn_auth/auth/authorisation/privileges.py
index fabab65..a977db5 100644
--- a/gn_auth/auth/authorisation/privileges.py
+++ b/gn_auth/auth/authorisation/privileges.py
@@ -2,6 +2,8 @@
from dataclasses import dataclass
from typing import Iterable
+import sqlite3
+
from ..db import sqlite3 as db
from ..authentication.users import User
@@ -13,6 +15,12 @@ class Privilege:
privilege_description: str
+def db_row_to_privilege(row: sqlite3.Row) -> Privilege:
+ "Convert single db row into a privilege object."
+ return Privilege(privilege_id=row["privilege_id"],
+ privilege_description=row["privilege_description"])
+
+
def user_privileges(conn: db.DbConnection, user: User) -> Iterable[Privilege]:
"""Fetch the user's privileges from the database."""
with db.cursor(conn) as cursor: