stubborn-otter/otter-boards

Otter Boards, a team task board you can run from the web or from Claude and ChatGPT. FastAPI + DataK3 + appid + Models + MCP.

A remix template · 1 remixes · Remix stubborn-otter/otter-boards

tests/e2e/local_app.py

"""The real app wired to local stand-ins for the end-to-end run. Lives under tests/, so the
Dockerfile never copies it: production only ever builds boards.main.app.

Everything is the production code path except two inputs: the database connection (a local
Postgres instead of DataK3) and the Models address and token (fake_models.py instead of Dodil).
"""
import os

import psycopg

from boards.application.use_cases import Boards
from boards.infrastructure.dodil import ModelsAssistant
from boards.infrastructure.repository import SqlBoards
from boards.main import create_app


def open_local():
    return psycopg.connect(os.environ["TEST_DATABASE_URL"], autocommit=True)


app = create_app(Boards(SqlBoards(open_local),
                        ModelsAssistant(get_token=lambda: "local-test-token",
                                        base=os.environ["LOCAL_MODELS_BASE"])))