Write more tests (#8799)

This commit is contained in:
Baptiste Devessier
2024-11-28 17:43:15 +01:00
committed by GitHub
parent b857d45182
commit 38b83f0866
11 changed files with 387 additions and 22 deletions

View File

@ -0,0 +1,53 @@
import { getTriggerStepName } from '../getTriggerStepName';
it('returns the expected name for a DATABASE_EVENT trigger', () => {
expect(
getTriggerStepName({
type: 'DATABASE_EVENT',
name: '',
settings: {
eventName: 'company.created',
outputSchema: {},
},
}),
).toBe('Company is Created');
});
it('returns the expected name for a MANUAL trigger without a defined objectType', () => {
expect(
getTriggerStepName({
type: 'MANUAL',
name: '',
settings: {
objectType: undefined,
outputSchema: {},
},
}),
).toBe('Manual trigger');
});
it('returns the expected name for a MANUAL trigger with a defined objectType', () => {
expect(
getTriggerStepName({
type: 'MANUAL',
name: '',
settings: {
objectType: 'company',
outputSchema: {},
},
}),
).toBe('Manual trigger for Company');
});
it('throws when an unknown trigger type is provided', () => {
expect(() => {
getTriggerStepName({
type: 'unknown' as any,
name: '',
settings: {
objectType: 'company',
outputSchema: {},
},
});
}).toThrow();
});

View File

@ -2,6 +2,8 @@ import {
WorkflowDatabaseEventTrigger,
WorkflowTrigger,
} from '@/workflow/types/Workflow';
import { assertUnreachable } from '@/workflow/utils/assertUnreachable';
import { isDefined } from 'twenty-ui';
import { capitalize } from '~/utils/string/capitalize';
export const getTriggerStepName = (trigger: WorkflowTrigger): string => {
@ -9,14 +11,14 @@ export const getTriggerStepName = (trigger: WorkflowTrigger): string => {
case 'DATABASE_EVENT':
return getDatabaseEventTriggerStepName(trigger);
case 'MANUAL':
if (!trigger.settings.objectType) {
if (!isDefined(trigger.settings.objectType)) {
return 'Manual trigger';
}
return 'Manual trigger for ' + capitalize(trigger.settings.objectType);
default:
return '';
}
return assertUnreachable(trigger);
};
const getDatabaseEventTriggerStepName = (