feat: add integration tests for project and scenario lifecycles, update templates to new Starlette signature, and optimize project retrieval logic
This commit is contained in:
@@ -59,9 +59,9 @@ def project_list_page(
|
||||
for project in projects:
|
||||
setattr(project, "scenario_count", len(project.scenarios))
|
||||
return templates.TemplateResponse(
|
||||
request,
|
||||
"projects/list.html",
|
||||
{
|
||||
"request": request,
|
||||
"projects": projects,
|
||||
},
|
||||
)
|
||||
@@ -75,9 +75,9 @@ def project_list_page(
|
||||
)
|
||||
def create_project_form(request: Request) -> HTMLResponse:
|
||||
return templates.TemplateResponse(
|
||||
request,
|
||||
"projects/form.html",
|
||||
{
|
||||
"request": request,
|
||||
"project": None,
|
||||
"operation_types": _operation_type_choices(),
|
||||
"form_action": request.url_for("projects.create_project_submit"),
|
||||
@@ -109,9 +109,9 @@ def create_project_submit(
|
||||
op_type = MiningOperationType(operation_type)
|
||||
except ValueError as exc:
|
||||
return templates.TemplateResponse(
|
||||
request,
|
||||
"projects/form.html",
|
||||
{
|
||||
"request": request,
|
||||
"project": None,
|
||||
"operation_types": _operation_type_choices(),
|
||||
"form_action": request.url_for("projects.create_project_submit"),
|
||||
@@ -131,9 +131,9 @@ def create_project_submit(
|
||||
uow.projects.create(project)
|
||||
except EntityConflictError as exc:
|
||||
return templates.TemplateResponse(
|
||||
request,
|
||||
"projects/form.html",
|
||||
{
|
||||
"request": request,
|
||||
"project": project,
|
||||
"operation_types": _operation_type_choices(),
|
||||
"form_action": request.url_for("projects.create_project_submit"),
|
||||
@@ -219,9 +219,9 @@ def view_project(
|
||||
),
|
||||
}
|
||||
return templates.TemplateResponse(
|
||||
request,
|
||||
"projects/detail.html",
|
||||
{
|
||||
"request": request,
|
||||
"project": project,
|
||||
"scenarios": scenarios,
|
||||
"scenario_stats": scenario_stats,
|
||||
@@ -246,9 +246,9 @@ def edit_project_form(
|
||||
) from exc
|
||||
|
||||
return templates.TemplateResponse(
|
||||
request,
|
||||
"projects/form.html",
|
||||
{
|
||||
"request": request,
|
||||
"project": project,
|
||||
"operation_types": _operation_type_choices(),
|
||||
"form_action": request.url_for(
|
||||
@@ -295,9 +295,9 @@ def edit_project_submit(
|
||||
project.operation_type = MiningOperationType(operation_type)
|
||||
except ValueError as exc:
|
||||
return templates.TemplateResponse(
|
||||
request,
|
||||
"projects/form.html",
|
||||
{
|
||||
"request": request,
|
||||
"project": project,
|
||||
"operation_types": _operation_type_choices(),
|
||||
"form_action": request.url_for(
|
||||
|
||||
Reference in New Issue
Block a user