mirror of
https://github.com/immich-app/immich.git
synced 2026-05-22 23:12:32 -04:00
3d075f2bf8
feat: plugins chore: better types feat: plugins
37 lines
1.0 KiB
TypeScript
37 lines
1.0 KiB
TypeScript
import { WorkflowTrigger, WorkflowType } from 'src/enum';
|
|
import { isMethodCompatible } from 'src/utils/workflow';
|
|
|
|
const tests: Array<{ trigger: WorkflowTrigger; types: WorkflowType[]; expected: boolean }> = [
|
|
{
|
|
trigger: WorkflowTrigger.AssetCreate,
|
|
types: [WorkflowType.AssetV1],
|
|
expected: true,
|
|
},
|
|
{
|
|
trigger: WorkflowTrigger.AssetCreate,
|
|
types: [WorkflowType.AssetPersonV1],
|
|
expected: true,
|
|
},
|
|
{
|
|
trigger: WorkflowTrigger.PersonRecognized,
|
|
types: [WorkflowType.AssetPersonV1],
|
|
expected: true,
|
|
},
|
|
{
|
|
trigger: WorkflowTrigger.PersonRecognized,
|
|
types: [WorkflowType.AssetV1],
|
|
expected: false,
|
|
},
|
|
{
|
|
trigger: WorkflowTrigger.PersonRecognized,
|
|
types: [WorkflowType.AssetV1, WorkflowType.AssetPersonV1],
|
|
expected: true,
|
|
},
|
|
];
|
|
|
|
describe(isMethodCompatible.name, () => {
|
|
it.each(tests)('should return $expected for trigger $trigger with types $types', ({ trigger, types, expected }) => {
|
|
expect(isMethodCompatible({ types }, trigger)).toBe(expected);
|
|
});
|
|
});
|