From 05d1c00dee5147288aa577c9cf338bb7fd4e057a Mon Sep 17 00:00:00 2001
From: Tim Repke <repke@mcc-berlin.net>
Date: Tue, 3 Sep 2024 15:39:12 +0200
Subject: [PATCH] add test db endpoint, fix startup error

---
 server/api/routes/ping.py | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/server/api/routes/ping.py b/server/api/routes/ping.py
index 94bdb2c..960f839 100644
--- a/server/api/routes/ping.py
+++ b/server/api/routes/ping.py
@@ -1,9 +1,13 @@
 from fastapi import APIRouter
 from fastapi.responses import PlainTextResponse
 
+from sqlalchemy import select, func as F
+from nacsos_data.db.schemas.projects import Project
+
 from server.pipelines import tasks
 from server.util.logging import get_logger
 from server.util.security import InsufficientPermissions
+from server.data import db_engine
 
 logger = get_logger('nacsos.api.route.ping')
 router = APIRouter()
@@ -57,6 +61,15 @@ async def perm():
     raise InsufficientPermissions('You do not have permission to edit this data import.')
 
 
+@router.get('/database')
+async def db_test():
+    async with db_engine.engine.connect() as session:
+        rslt = (await session.execute(select(F.count(Project.project_id)))).scalar()
+        logger.debug(f'There are {rslt:,} projects on the platform')
+        await session.close()
+        return rslt
+
+
 @router.post('/{name}', response_class=PlainTextResponse)
 async def _ping(name: str) -> str:
     return f'Hello {name}'
-- 
GitLab