mirror of
https://github.com/n8n-io/n8n.git
synced 2024-11-10 22:54:05 -08:00
42 lines
917 B
TypeScript
42 lines
917 B
TypeScript
|
import { saveExecutionMetadata } from '@/WorkflowExecuteAdditionalData';
|
||
|
import * as Db from '@/Db';
|
||
|
import { mocked } from 'jest-mock';
|
||
|
|
||
|
jest.mock('@/Db', () => {
|
||
|
return {
|
||
|
collections: {
|
||
|
ExecutionMetadata: {
|
||
|
save: jest.fn(async () => Promise.resolve([])),
|
||
|
},
|
||
|
},
|
||
|
};
|
||
|
});
|
||
|
|
||
|
describe('WorkflowExecuteAdditionalData', () => {
|
||
|
test('Execution metadata is saved in a batch', async () => {
|
||
|
const toSave = {
|
||
|
test1: 'value1',
|
||
|
test2: 'value2',
|
||
|
};
|
||
|
const executionId = '1234';
|
||
|
|
||
|
await saveExecutionMetadata(executionId, toSave);
|
||
|
|
||
|
expect(mocked(Db.collections.ExecutionMetadata.save)).toHaveBeenCalledTimes(1);
|
||
|
expect(mocked(Db.collections.ExecutionMetadata.save).mock.calls[0]).toEqual([
|
||
|
[
|
||
|
{
|
||
|
execution: { id: executionId },
|
||
|
key: 'test1',
|
||
|
value: 'value1',
|
||
|
},
|
||
|
{
|
||
|
execution: { id: executionId },
|
||
|
key: 'test2',
|
||
|
value: 'value2',
|
||
|
},
|
||
|
],
|
||
|
]);
|
||
|
});
|
||
|
});
|