mirror of
https://github.com/status-im/spiff-arena.git
synced 2025-01-25 09:20:17 +00:00
628c59dde9
Main change is in the ErrorDisplay.tsx to assure all error information is provided. and index.css to make it "pretty"
55 lines
1.9 KiB
Python
55 lines
1.9 KiB
Python
"""User."""
|
|
from typing import Optional
|
|
|
|
from tests.spiffworkflow_backend.helpers.example_data import ExampleDataLoader
|
|
|
|
from spiffworkflow_backend.exceptions.process_entity_not_found_error import (
|
|
ProcessEntityNotFoundError,
|
|
)
|
|
from spiffworkflow_backend.models.process_group import ProcessGroup
|
|
from spiffworkflow_backend.models.process_model import ProcessModelInfo
|
|
from spiffworkflow_backend.services.process_model_service import ProcessModelService
|
|
|
|
|
|
def assure_process_group_exists(process_group_id: Optional[str] = None) -> ProcessGroup:
|
|
"""Assure_process_group_exists."""
|
|
process_group = None
|
|
process_model_service = ProcessModelService()
|
|
if process_group_id is not None:
|
|
try:
|
|
process_group = process_model_service.get_process_group(process_group_id)
|
|
except ProcessEntityNotFoundError:
|
|
process_group = None
|
|
|
|
if process_group is None:
|
|
process_group_id_to_create = "test_process_group"
|
|
if process_group_id is not None:
|
|
process_group_id_to_create = process_group_id
|
|
process_group = ProcessGroup(
|
|
id=process_group_id_to_create,
|
|
display_name="Test Workflows",
|
|
admin=False,
|
|
display_order=0,
|
|
)
|
|
process_model_service.add_process_group(process_group)
|
|
return process_group
|
|
|
|
|
|
def load_test_spec(
|
|
process_model_id: str,
|
|
bpmn_file_name: Optional[str] = None,
|
|
process_model_source_directory: Optional[str] = None,
|
|
) -> ProcessModelInfo:
|
|
"""Loads a bpmn file into the process model dir based on a directory in tests/data.
|
|
"""
|
|
if process_model_source_directory is None:
|
|
raise Exception("You must inclode a `process_model_source_directory`.")
|
|
|
|
spec = ExampleDataLoader.create_spec(
|
|
process_model_id=process_model_id,
|
|
display_name=process_model_id,
|
|
bpmn_file_name=bpmn_file_name,
|
|
process_model_source_directory=process_model_source_directory,
|
|
)
|
|
return spec
|