mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-26 21:19:43 -08:00
000e76e3b4
This also gets rid of `Db.collection`, which was another source of circular dependencies.
56 lines
1.5 KiB
TypeScript
56 lines
1.5 KiB
TypeScript
import { License } from '@/License';
|
|
import config from '@/config';
|
|
import { getWorkflowHistoryPruneTime } from '@/workflows/workflowHistory/workflowHistoryHelper.ee';
|
|
import { mockInstance } from '../shared/mocking';
|
|
|
|
let licenseMock: License;
|
|
let licensePruneTime = -1;
|
|
|
|
beforeAll(async () => {
|
|
licenseMock = mockInstance(License, {
|
|
getWorkflowHistoryPruneLimit() {
|
|
return licensePruneTime;
|
|
},
|
|
});
|
|
});
|
|
|
|
beforeEach(() => {
|
|
licensePruneTime = -1;
|
|
config.set('workflowHistory.pruneTime', -1);
|
|
});
|
|
|
|
describe('getWorkflowHistoryPruneTime', () => {
|
|
test('should return -1 (infinite) if config and license are -1', () => {
|
|
licensePruneTime = -1;
|
|
config.set('workflowHistory.pruneTime', -1);
|
|
|
|
expect(getWorkflowHistoryPruneTime()).toBe(-1);
|
|
});
|
|
|
|
test('should return config time if license is infinite and config is not', () => {
|
|
licensePruneTime = -1;
|
|
config.set('workflowHistory.pruneTime', 24);
|
|
|
|
expect(getWorkflowHistoryPruneTime()).toBe(24);
|
|
});
|
|
|
|
test('should return license time if config is infinite and license is not', () => {
|
|
licensePruneTime = 25;
|
|
config.set('workflowHistory.pruneTime', -1);
|
|
|
|
expect(getWorkflowHistoryPruneTime()).toBe(25);
|
|
});
|
|
|
|
test('should return lowest of config and license time if both are not -1', () => {
|
|
licensePruneTime = 26;
|
|
config.set('workflowHistory.pruneTime', 100);
|
|
|
|
expect(getWorkflowHistoryPruneTime()).toBe(26);
|
|
|
|
licensePruneTime = 100;
|
|
config.set('workflowHistory.pruneTime', 27);
|
|
|
|
expect(getWorkflowHistoryPruneTime()).toBe(27);
|
|
});
|
|
});
|