kipina-codebench: itsenäinen benchmark-moduli git-submoduliksi
Refaktoroitu tests/-kansiosta omaksi moduliksi: - prompts/ — kaikki promptit erillisinä .md-tiedostoina - golden-examples/ — todo (taso 1) + blog (taso 2) - benchmark.mjs lataa promptit ja esimerkit dynaamisesti - Dockerfile.pytest, report-template.html, package.json, README.md - results/ — tallennetut benchmark-tulokset
This commit is contained in:
30
network-poc/kipina-codebench/golden-examples/todo/models.py
Normal file
30
network-poc/kipina-codebench/golden-examples/todo/models.py
Normal file
@@ -0,0 +1,30 @@
|
||||
"""Tietokantamallit — SQLAlchemy 2.0, Mapped-tyypitys, SQLite."""
|
||||
|
||||
from datetime import date
|
||||
|
||||
from sqlalchemy import String, Text, Date, create_engine
|
||||
from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column, sessionmaker
|
||||
|
||||
DATABASE_URL = "sqlite:///./app.db"
|
||||
engine = create_engine(DATABASE_URL, connect_args={"check_same_thread": False})
|
||||
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
|
||||
|
||||
|
||||
class Base(DeclarativeBase):
|
||||
pass
|
||||
|
||||
|
||||
class Todo(Base):
|
||||
"""Tehtävä — otsikko, kuvaus, deadline, prioriteetti ja status."""
|
||||
|
||||
__tablename__ = "todos"
|
||||
|
||||
id: Mapped[int] = mapped_column(primary_key=True, index=True)
|
||||
title: Mapped[str] = mapped_column(String(255))
|
||||
description: Mapped[str | None] = mapped_column(Text, default=None)
|
||||
due_date: Mapped[date | None] = mapped_column(Date, default=None)
|
||||
priority: Mapped[int] = mapped_column(default=1)
|
||||
status: Mapped[str] = mapped_column(String(20), default="pending")
|
||||
|
||||
|
||||
Base.metadata.create_all(bind=engine)
|
||||
Reference in New Issue
Block a user