@n8n/backend-test-utils 1.8.2 → 1.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/mocking.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  import { type Constructable } from '@n8n/di';
2
- import type { DeepPartial } from 'ts-essentials';
3
- export declare const mockInstance: <T>(serviceClass: Constructable<T>, data?: DeepPartial<T> | undefined) => { [K in keyof T]: T[K] extends (...args: infer A) => infer B ? import("jest-mock-extended").CalledWithMock<B, A> : T[K]; } & T;
2
+ import { mock } from 'jest-mock-extended';
3
+ export declare const mockInstance: <T>(serviceClass: Constructable<T>, data?: Parameters<typeof mock<T>>[0]) => { [K in keyof T]: T[K] extends (...args: infer A) => infer B ? import("jest-mock-extended").CalledWithMock<B, A> : T[K]; } & T;
package/dist/mocking.js CHANGED
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.mockInstance = void 0;
4
4
  const di_1 = require("@n8n/di");
5
5
  const jest_mock_extended_1 = require("jest-mock-extended");
6
- const mockInstance = (serviceClass, data = undefined) => {
6
+ const mockInstance = (serviceClass, data) => {
7
7
  const instance = (0, jest_mock_extended_1.mock)(data);
8
8
  di_1.Container.set(serviceClass, instance);
9
9
  return instance;
@@ -1 +1 @@
1
- {"version":3,"file":"mocking.js","sourceRoot":"","sources":["../src/mocking.ts"],"names":[],"mappings":";;;AAAA,gCAAwD;AACxD,2DAA0C;AAGnC,MAAM,YAAY,GAAG,CAC3B,YAA8B,EAC9B,OAAmC,SAAS,EAC3C,EAAE;IACH,MAAM,QAAQ,GAAG,IAAA,yBAAI,EAAI,IAAI,CAAC,CAAC;IAC/B,cAAS,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtC,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAPW,QAAA,YAAY,gBAOvB"}
1
+ {"version":3,"file":"mocking.js","sourceRoot":"","sources":["../src/mocking.ts"],"names":[],"mappings":";;;AAAA,gCAAwD;AACxD,2DAA0C;AAEnC,MAAM,YAAY,GAAG,CAC3B,YAA8B,EAC9B,IAAoC,EACnC,EAAE;IACH,MAAM,QAAQ,GAAG,IAAA,yBAAI,EAAI,IAAI,CAAC,CAAC;IAC/B,cAAS,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtC,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAPW,QAAA,YAAY,gBAOvB"}
package/dist/test-db.d.ts CHANGED
@@ -5,6 +5,6 @@ export declare const getBootstrapDBOptions: () => DataSourceOptions;
5
5
  export declare function init(): Promise<void>;
6
6
  export declare function isReady(): boolean;
7
7
  export declare function terminate(): Promise<void>;
8
- type EntityName = keyof typeof entities | 'InsightsRaw' | 'InsightsByPeriod' | 'InsightsMetadata' | 'DataTable' | 'DataTableColumn' | 'ChatHubSession' | 'ChatHubMessage' | 'ChatHubAgent' | 'OAuthClient' | 'AuthorizationCode' | 'AccessToken' | 'RefreshToken' | 'UserConsent' | 'DynamicCredentialEntry' | 'DynamicCredentialResolver' | 'DynamicCredentialUserEntry';
8
+ type EntityName = keyof typeof entities | 'InsightsRaw' | 'InsightsByPeriod' | 'InsightsMetadata' | 'DataTable' | 'DataTableColumn' | 'ChatHubSession' | 'ChatHubMessage' | 'ChatHubAgent' | 'ChatHubTool' | 'OAuthClient' | 'AuthorizationCode' | 'AccessToken' | 'RefreshToken' | 'UserConsent' | 'DynamicCredentialEntry' | 'DynamicCredentialResolver' | 'DynamicCredentialUserEntry';
9
9
  export declare function truncate(entities: EntityName[]): Promise<void>;
10
10
  export {};
package/dist/test-db.js CHANGED
@@ -16,6 +16,8 @@ const assert_1 = __importDefault(require("assert"));
16
16
  const n8n_workflow_1 = require("n8n-workflow");
17
17
  exports.testDbPrefix = 'n8n_test_';
18
18
  let isInitialized = false;
19
+ let testDbName;
20
+ let originalDatabase;
19
21
  const getBootstrapDBOptions = () => {
20
22
  const globalConfig = di_1.Container.get(config_1.GlobalConfig);
21
23
  (0, assert_1.default)(globalConfig.database.type === 'postgresdb', 'Database type must be postgresdb');
@@ -33,8 +35,9 @@ async function init() {
33
35
  return;
34
36
  const globalConfig = di_1.Container.get(config_1.GlobalConfig);
35
37
  const dbType = globalConfig.database.type;
36
- const testDbName = `${exports.testDbPrefix}${(0, n8n_workflow_1.randomString)(6, 10).toLowerCase()}_${Date.now()}`;
38
+ testDbName = `${exports.testDbPrefix}${(0, n8n_workflow_1.randomString)(6, 10).toLowerCase()}_${Date.now()}`;
37
39
  if (dbType === 'postgresdb') {
40
+ originalDatabase = globalConfig.database.postgresdb.database;
38
41
  const bootstrapPostgres = await new typeorm_1.DataSource((0, exports.getBootstrapDBOptions)()).initialize();
39
42
  await bootstrapPostgres.query(`CREATE DATABASE ${testDbName}`);
40
43
  await bootstrapPostgres.destroy();
@@ -54,6 +57,21 @@ async function terminate() {
54
57
  const dbConnection = di_1.Container.get(db_1.DbConnection);
55
58
  await dbConnection.close();
56
59
  dbConnection.connectionState.connected = false;
60
+ if (testDbName && originalDatabase) {
61
+ const globalConfig = di_1.Container.get(config_1.GlobalConfig);
62
+ if (globalConfig.database.type === 'postgresdb') {
63
+ try {
64
+ globalConfig.database.postgresdb.database = originalDatabase;
65
+ const bootstrap = await new typeorm_1.DataSource((0, exports.getBootstrapDBOptions)()).initialize();
66
+ await bootstrap.query(`DROP DATABASE IF EXISTS "${testDbName}"`);
67
+ await bootstrap.destroy();
68
+ }
69
+ catch (error) {
70
+ console.warn(`Failed to drop test database "${testDbName}":`, error);
71
+ }
72
+ }
73
+ testDbName = undefined;
74
+ }
57
75
  isInitialized = false;
58
76
  }
59
77
  async function truncate(entities) {
@@ -1 +1 @@
1
- {"version":3,"file":"test-db.js","sourceRoot":"","sources":["../src/test-db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-db.js","sourceRoot":"","sources":["../src/test-db.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,26 +1,26 @@
1
1
  {
2
2
  "name": "@n8n/backend-test-utils",
3
- "version": "1.8.2",
3
+ "version": "1.9.1",
4
4
  "main": "dist/index.js",
5
5
  "module": "src/index.ts",
6
6
  "types": "dist/index.d.ts",
7
7
  "files": [
8
8
  "dist/**/*",
9
- "LICENSE_EE.md",
10
- "LICENSE.md"
9
+ "LICENSE.md",
10
+ "LICENSE_EE.md"
11
11
  ],
12
12
  "dependencies": {
13
- "@n8n/typeorm": "0.3.20-15",
13
+ "@n8n/typeorm": "0.3.20-16",
14
14
  "jest-mock-extended": "^3.0.4",
15
15
  "reflect-metadata": "0.2.2",
16
16
  "uuid": "10.0.0",
17
- "@n8n/backend-common": "1.8.1",
18
- "@n8n/config": "2.7.1",
17
+ "@n8n/backend-common": "1.9.1",
18
+ "@n8n/config": "2.8.0",
19
+ "@n8n/constants": "0.19.0",
20
+ "@n8n/db": "1.9.1",
21
+ "@n8n/permissions": "0.50.0",
19
22
  "@n8n/di": "0.10.0",
20
- "@n8n/db": "1.8.2",
21
- "@n8n/constants": "0.18.0",
22
- "@n8n/permissions": "0.49.0",
23
- "n8n-workflow": "2.8.0"
23
+ "n8n-workflow": "2.9.1"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@n8n/typescript-config": "1.3.0"