Merge branch 'main' into feature/nested-groups-2

This commit is contained in:
mike cullerton 2022-11-09 17:02:40 -05:00
commit f73b863661
4 changed files with 37 additions and 37 deletions

View File

@ -14,6 +14,6 @@ class SpiffStepDetailsModel(SpiffworkflowBaseDBModel):
id: int = db.Column(db.Integer, primary_key=True)
process_instance_id: int = db.Column(db.Integer, nullable=False)
spiff_step: int = db.Column(db.Integer, nullable=False)
task_json: str | None = deferred(db.Column(db.JSON, nullable=False)) # type: ignore
task_json: str = deferred(db.Column(db.JSON, nullable=False)) # type: ignore
timestamp: float = db.Column(db.DECIMAL(17, 6), nullable=False)
completed_by_user_id: int = db.Column(db.Integer, nullable=True)

View File

@ -19,7 +19,6 @@ class ExampleDataLoader:
display_name: str = "",
description: str = "",
display_order: int = 0,
# from_tests: bool = False,
bpmn_file_name: Optional[str] = None,
process_model_source_directory: Optional[str] = None,
) -> ProcessModelInfo:
@ -58,9 +57,9 @@ class ExampleDataLoader:
if bpmn_file_name:
file_name_matcher = bpmn_file_name_with_extension
# file_glob = ""
# we need instance_path here for nox tests
file_glob = os.path.join(
current_app.root_path,
current_app.instance_path,
"..",
"..",
"tests",

View File

@ -26,34 +26,35 @@ test('renders hotCrumbs', () => {
expect(nextElement).toBeInTheDocument();
});
test('renders process group when given processGroupId', async () => {
render(
<BrowserRouter>
<ProcessBreadcrumb processGroupId="group-a" />
</BrowserRouter>
);
const processGroupElement = screen.getByText(/group-a/);
expect(processGroupElement).toBeInTheDocument();
const processGroupBreadcrumbs = await screen.findAllByText(
/Process Group: group-a/
);
expect(processGroupBreadcrumbs[0]).toHaveClass('breadcrumb-item active');
});
test('renders process model when given processModelId', async () => {
render(
<BrowserRouter>
<ProcessBreadcrumb processGroupId="group-b" processModelId="model-c" />
</BrowserRouter>
);
const processGroupElement = screen.getByText(/group-b/);
expect(processGroupElement).toBeInTheDocument();
const processModelBreadcrumbs = await screen.findAllByText(
/Process Model: model-c/
);
expect(processModelBreadcrumbs[0]).toHaveClass('breadcrumb-item active');
const processGroupBreadcrumbs = await screen.findAllByText(
/Process Group: group-b/
);
expect(processGroupBreadcrumbs[0]).toBeInTheDocument();
});
// FIXME: update to use hotcrumbs
// test('renders process group when given processGroupId', async () => {
// render(
// <BrowserRouter>
// <ProcessBreadcrumb processGroupId="group-a" />
// </BrowserRouter>
// );
// const processGroupElement = screen.getByText(/group-a/);
// expect(processGroupElement).toBeInTheDocument();
// const processGroupBreadcrumbs = await screen.findAllByText(
// /Process Group: group-a/
// );
// expect(processGroupBreadcrumbs[0]).toHaveClass('breadcrumb-item active');
// });
//
// test('renders process model when given processModelId', async () => {
// render(
// <BrowserRouter>
// <ProcessBreadcrumb processGroupId="group-b" processModelId="model-c" />
// </BrowserRouter>
// );
// const processGroupElement = screen.getByText(/group-b/);
// expect(processGroupElement).toBeInTheDocument();
// const processModelBreadcrumbs = await screen.findAllByText(
// /Process Model: model-c/
// );
// expect(processModelBreadcrumbs[0]).toHaveClass('breadcrumb-item active');
// const processGroupBreadcrumbs = await screen.findAllByText(
// /Process Group: group-b/
// );
// expect(processGroupBreadcrumbs[0]).toBeInTheDocument();
// });

View File

@ -37,7 +37,7 @@ const explodeCrumb = (crumb: HotCrumbItem) => {
);
} else {
breadcrumbItems.push(
<BreadcrumbItem isCurrentPage>{lastPathItem}</BreadcrumbItem>
<BreadcrumbItem isCurrentPage key={lastPathItem}>{lastPathItem}</BreadcrumbItem>
);
}
return breadcrumbItems;
@ -56,7 +56,7 @@ export default function ProcessBreadcrumb({
const valueLabel = crumb[0];
const url = crumb[1];
if (!url) {
return <BreadcrumbItem isCurrentPage>{valueLabel}</BreadcrumbItem>;
return <BreadcrumbItem isCurrentPage key={valueLabel}>{valueLabel}</BreadcrumbItem>;
}
if (url && url.startsWith('process_model:')) {
return explodeCrumb(crumb);