Automate RC8 release journeys
This commit is contained in:
@@ -5,6 +5,7 @@ from uuid import uuid4
|
||||
from fastapi.testclient import TestClient
|
||||
|
||||
from app.main import app
|
||||
from app.models import Project
|
||||
from app.schemas.demo import DemoWorkflowResponse
|
||||
from app.services.demo_workflow_service import DemoWorkflowService
|
||||
|
||||
@@ -80,3 +81,30 @@ def test_demo_workflow_prefers_complete_existing_demo_project() -> None:
|
||||
assert "order_by(Project.created_at.asc())" in service
|
||||
assert "if DemoWorkflowService._has_complete_demo_state(db, project.id):" in service
|
||||
assert "return projects[0] if projects else None" in service
|
||||
|
||||
|
||||
def test_explicit_demo_seed_reactivates_an_archived_fixture_project() -> None:
|
||||
project = Project(id=uuid4(), name=DemoWorkflowService.PROJECT_NAME, status="archived")
|
||||
|
||||
class Session:
|
||||
added = []
|
||||
commits = 0
|
||||
refreshed = []
|
||||
|
||||
def add(self, value) -> None:
|
||||
self.added.append(value)
|
||||
|
||||
def commit(self) -> None:
|
||||
self.commits += 1
|
||||
|
||||
def refresh(self, value) -> None:
|
||||
self.refreshed.append(value)
|
||||
|
||||
db = Session()
|
||||
result = DemoWorkflowService._activate_explicit_demo_project(db, project)
|
||||
|
||||
assert result is project
|
||||
assert project.status == "active"
|
||||
assert db.added == [project]
|
||||
assert db.commits == 1
|
||||
assert db.refreshed == [project]
|
||||
|
||||
Reference in New Issue
Block a user