refactor(core): Rename @n8n/integration-test-utils to @n8n/backend-test-utils (#16444)

This commit is contained in:
Iván Ovejero
2025-06-17 18:09:44 +02:00
committed by GitHub
parent 2f6896cc7b
commit b5828e5b56
30 changed files with 70 additions and 84 deletions

View File

@@ -35,7 +35,7 @@ component_management:
- packages/@n8n/decorators/**
- packages/@n8n/constants/**
- packages/@n8n/backend-common/**
- packages/@n8n/integration-test-utils/**
- packages/@n8n/backend-test-utils/**
- packages/@n8n/db/**
- packages/@n8n/di/**
- packages/@n8n/imap/**
@@ -61,8 +61,6 @@ component_management:
target: auto
threshold: 0% # Enforce: Coverage must not decrease
ignore:
- (?s:.*/[^\/]*\.spec\.ts.*)\Z
- (?s:.*/[^\/]*\.test\.ts.*)\Z

View File

@@ -1,5 +1,5 @@
{
"name": "@n8n/integration-test-utils",
"name": "@n8n/backend-test-utils",
"version": "0.2.0",
"scripts": {
"clean": "rimraf dist .turbo",

View File

@@ -99,7 +99,7 @@
"@n8n/db": "workspace:^",
"@n8n/decorators": "workspace:*",
"@n8n/di": "workspace:*",
"@n8n/integration-test-utils": "workspace:^",
"@n8n/backend-test-utils": "workspace:^",
"@n8n/localtunnel": "3.0.0",
"@n8n/n8n-nodes-langchain": "workspace:*",
"@n8n/permissions": "workspace:*",

View File

@@ -1,6 +1,6 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { WorkflowEntity } from '@n8n/db';
import type { WorkflowRepository } from '@n8n/db';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import type { InstanceSettings } from 'n8n-core';
import type {

View File

@@ -1,5 +1,5 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { GlobalConfig } from '@n8n/config';
import { mockLogger } from '@n8n/integration-test-utils';
import { LicenseManager } from '@n8n_io/license-sdk';
import { mock } from 'jest-mock-extended';
import type { InstanceSettings } from 'n8n-core';

View File

@@ -1,7 +1,7 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { Project } from '@n8n/db';
import type { IExecutionResponse } from '@n8n/db';
import type { ExecutionRepository } from '@n8n/db';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import type { InstanceSettings } from 'n8n-core';
import type { IRun, IWorkflowBase } from 'n8n-workflow';

View File

@@ -1,6 +1,6 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { GlobalConfig } from '@n8n/config';
import type { ExecutionRepository } from '@n8n/db';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import type { WorkflowExecuteMode as ExecutionMode } from 'n8n-workflow';

View File

@@ -1,8 +1,8 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { TestRun } from '@n8n/db';
import type { TestCaseExecutionRepository } from '@n8n/db';
import type { TestRunRepository } from '@n8n/db';
import type { WorkflowRepository } from '@n8n/db';
import { mockLogger } from '@n8n/integration-test-utils';
import { readFileSync } from 'fs';
import type { Mock } from 'jest-mock';
import { mock } from 'jest-mock-extended';

View File

@@ -1,7 +1,7 @@
import { mockLogger } from '@n8n/backend-test-utils';
import { LDAP_FEATURE_NAME, type LdapConfig } from '@n8n/constants';
import type { Settings } from '@n8n/db';
import { AuthIdentityRepository, SettingsRepository } from '@n8n/db';
import { mockLogger } from '@n8n/integration-test-utils';
import { QueryFailedError } from '@n8n/typeorm';
import { mock } from 'jest-mock-extended';
import { Client } from 'ldapts';

View File

@@ -1,5 +1,5 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { Settings, SettingsRepository } from '@n8n/db';
import { mockLogger } from '@n8n/integration-test-utils';
import { captor, mock } from 'jest-mock-extended';
import type { License } from '@/license';

View File

@@ -1,10 +1,10 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { Project } from '@n8n/db';
import type { WorkflowEntity } from '@n8n/db';
import type { IWorkflowDb } from '@n8n/db';
import type { SharedWorkflowRepository } from '@n8n/db';
import type { WorkflowExecuteAfterContext } from '@n8n/decorators';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import { In } from '@n8n/typeorm';
import { mock } from 'jest-mock-extended';
import { DateTime } from 'luxon';

View File

@@ -1,5 +1,5 @@
import { mockLogger } from '@n8n/backend-test-utils';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import { DateTime } from 'luxon';

View File

@@ -1,6 +1,6 @@
import type { LicenseState } from '@n8n/backend-common';
import { mockLogger } from '@n8n/backend-test-utils';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import { DateTime } from 'luxon';

View File

@@ -1,11 +1,11 @@
import type { InsightsDateRange } from '@n8n/api-types';
import type { LicenseState } from '@n8n/backend-common';
import { mockLogger } from '@n8n/backend-test-utils';
import type { Project } from '@n8n/db';
import type { WorkflowEntity } from '@n8n/db';
import type { IWorkflowDb } from '@n8n/db';
import type { WorkflowExecuteAfterContext } from '@n8n/decorators';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import type { MockProxy } from 'jest-mock-extended';
import { mock } from 'jest-mock-extended';
import { DateTime } from 'luxon';

View File

@@ -1,6 +1,6 @@
import { mockLogger } from '@n8n/backend-test-utils';
import { GlobalConfig } from '@n8n/config';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import * as BullModule from 'bull';
import { mock } from 'jest-mock-extended';
import { InstanceSettings } from 'n8n-core';

View File

@@ -1,5 +1,5 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { GlobalConfig } from '@n8n/config';
import { mockLogger } from '@n8n/integration-test-utils';
import type express from 'express';
import { mock } from 'jest-mock-extended';
import type { InstanceSettings } from 'n8n-core';

View File

@@ -1,4 +1,4 @@
import { mockLogger } from '@n8n/integration-test-utils';
import { mockLogger } from '@n8n/backend-test-utils';
import type { Redis as SingleNodeClient } from 'ioredis';
import { mock } from 'jest-mock-extended';
import type { InstanceSettings } from 'n8n-core';

View File

@@ -1,6 +1,6 @@
import { mockLogger } from '@n8n/backend-test-utils';
import { OnPubSubEvent, PubSubMetadata } from '@n8n/decorators';
import { Container, Service } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import type { InstanceSettings } from 'n8n-core';

View File

@@ -1,5 +1,5 @@
import { mockLogger } from '@n8n/backend-test-utils';
import type { ExecutionsConfig } from '@n8n/config';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import type { InstanceSettings } from 'n8n-core';

View File

@@ -1,6 +1,6 @@
import { mockLogger } from '@n8n/backend-test-utils';
import { User } from '@n8n/db';
import { WorkflowHistoryRepository } from '@n8n/db';
import { mockLogger } from '@n8n/integration-test-utils';
import { mockClear } from 'jest-mock-extended';
import { WorkflowFinderService } from '@/workflows/workflow-finder.service';

View File

@@ -1,8 +1,8 @@
import { mockLogger } from '@n8n/backend-test-utils';
import { ExecutionsConfig } from '@n8n/config';
import type { ExecutionEntity } from '@n8n/db';
import { ExecutionRepository } from '@n8n/db';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import { BinaryDataService, InstanceSettings } from 'n8n-core';
import type { ExecutionStatus, IWorkflowBase } from 'n8n-workflow';

View File

@@ -1,7 +1,7 @@
import { LicenseState } from '@n8n/backend-common';
import { mockLogger } from '@n8n/backend-test-utils';
import { SettingsRepository } from '@n8n/db';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import { mock } from 'jest-mock-extended';
import { Cipher } from 'n8n-core';
import type { IDataObject } from 'n8n-workflow';

View File

@@ -1,7 +1,7 @@
import { LicenseState } from '@n8n/backend-common';
import { mockLogger } from '@n8n/backend-test-utils';
import type { User } from '@n8n/db';
import { Container } from '@n8n/di';
import { mockLogger } from '@n8n/integration-test-utils';
import cookieParser from 'cookie-parser';
import express from 'express';
import type superagent from 'superagent';

View File

@@ -30,7 +30,7 @@
{ "path": "../@n8n/decorators/tsconfig.build.json" },
{ "path": "../@n8n/db/tsconfig.build.json" },
{ "path": "../@n8n/backend-common/tsconfig.build.json" },
{ "path": "../@n8n/integration-test-utils/tsconfig.build.json" },
{ "path": "../@n8n/backend-test-utils/tsconfig.build.json" },
{ "path": "../@n8n/di/tsconfig.build.json" },
{ "path": "../@n8n/nodes-langchain/tsconfig.build.json" },
{ "path": "../@n8n/permissions/tsconfig.build.json" }

100
pnpm-lock.yaml generated
View File

@@ -444,6 +444,22 @@ importers:
specifier: workspace:*
version: link:../typescript-config
packages/@n8n/backend-test-utils:
dependencies:
'@n8n/backend-common':
specifier: workspace:^
version: link:../backend-common
jest-mock-extended:
specifier: ^3.0.4
version: 3.0.4(jest@29.6.2(@types/node@20.17.57)(ts-node@10.9.2(@types/node@20.17.57)(typescript@5.8.2)))(typescript@5.8.2)
reflect-metadata:
specifier: 'catalog:'
version: 0.2.2
devDependencies:
'@n8n/typescript-config':
specifier: workspace:*
version: link:../typescript-config
packages/@n8n/benchmark:
dependencies:
'@oclif/core':
@@ -738,22 +754,6 @@ importers:
specifier: ^0.0.3
version: 0.0.3(patch_hash=083a73709a54db57b092d986b43d27ddda3cb8008f9510e98bc9e6da0e1cbb62)
packages/@n8n/integration-test-utils:
dependencies:
'@n8n/backend-common':
specifier: workspace:^
version: link:../backend-common
jest-mock-extended:
specifier: ^3.0.4
version: 3.0.4(jest@29.6.2(@types/node@20.17.57)(ts-node@10.9.2(@types/node@20.17.57)(typescript@5.8.2)))(typescript@5.8.2)
reflect-metadata:
specifier: 'catalog:'
version: 0.2.2
devDependencies:
'@n8n/typescript-config':
specifier: workspace:*
version: link:../typescript-config
packages/@n8n/json-schema-to-zod:
devDependencies:
'@n8n/typescript-config':
@@ -776,7 +776,7 @@ importers:
version: 4.3.0
'@getzep/zep-cloud':
specifier: 1.0.12
version: 1.0.12(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)(langchain@0.3.11(e417b0b770c7ddaee3cf4ccf28b37200))
version: 1.0.12(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)(langchain@0.3.11(259cf7eaee7343a58498f432f7938ad9))
'@getzep/zep-js':
specifier: 0.9.0
version: 0.9.0
@@ -803,7 +803,7 @@ importers:
version: 0.3.2(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)
'@langchain/community':
specifier: 'catalog:'
version: 0.3.24(01b86b12d6f50995a1edd579a0245a6d)
version: 0.3.24(c3af4d731197d186549496cd7d66d0a9)
'@langchain/core':
specifier: 'catalog:'
version: 0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))
@@ -908,7 +908,7 @@ importers:
version: 23.0.1
langchain:
specifier: 0.3.11
version: 0.3.11(e417b0b770c7ddaee3cf4ccf28b37200)
version: 0.3.11(259cf7eaee7343a58498f432f7938ad9)
lodash:
specifier: 'catalog:'
version: 4.17.21
@@ -1151,6 +1151,9 @@ importers:
'@n8n/backend-common':
specifier: workspace:^
version: link:../@n8n/backend-common
'@n8n/backend-test-utils':
specifier: workspace:^
version: link:../@n8n/backend-test-utils
'@n8n/client-oauth2':
specifier: workspace:*
version: link:../@n8n/client-oauth2
@@ -1169,9 +1172,6 @@ importers:
'@n8n/di':
specifier: workspace:*
version: link:../@n8n/di
'@n8n/integration-test-utils':
specifier: workspace:^
version: link:../@n8n/integration-test-utils
'@n8n/localtunnel':
specifier: 3.0.0
version: 3.0.0
@@ -16913,7 +16913,7 @@ snapshots:
'@gar/promisify@1.1.3':
optional: true
'@getzep/zep-cloud@1.0.12(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)(langchain@0.3.11(e417b0b770c7ddaee3cf4ccf28b37200))':
'@getzep/zep-cloud@1.0.12(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)(langchain@0.3.11(259cf7eaee7343a58498f432f7938ad9))':
dependencies:
form-data: 4.0.0
node-fetch: 2.7.0(encoding@0.1.13)
@@ -16922,7 +16922,7 @@ snapshots:
zod: 3.24.1
optionalDependencies:
'@langchain/core': 0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))
langchain: 0.3.11(e417b0b770c7ddaee3cf4ccf28b37200)
langchain: 0.3.11(259cf7eaee7343a58498f432f7938ad9)
transitivePeerDependencies:
- encoding
@@ -17446,7 +17446,7 @@ snapshots:
- aws-crt
- encoding
'@langchain/community@0.3.24(01b86b12d6f50995a1edd579a0245a6d)':
'@langchain/community@0.3.24(c3af4d731197d186549496cd7d66d0a9)':
dependencies:
'@browserbasehq/stagehand': 1.9.0(@playwright/test@1.49.1)(deepmerge@4.3.1)(dotenv@16.5.0)(encoding@0.1.13)(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))(zod@3.24.1)
'@ibm-cloud/watsonx-ai': 1.1.2
@@ -17457,7 +17457,7 @@ snapshots:
flat: 5.0.2
ibm-cloud-sdk-core: 5.3.2
js-yaml: 4.1.0
langchain: 0.3.11(e417b0b770c7ddaee3cf4ccf28b37200)
langchain: 0.3.11(259cf7eaee7343a58498f432f7938ad9)
langsmith: 0.2.15(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))
openai: 4.78.1(encoding@0.1.13)(zod@3.24.1)
uuid: 10.0.0
@@ -17472,7 +17472,7 @@ snapshots:
'@aws-sdk/credential-provider-node': 3.808.0
'@azure/storage-blob': 12.26.0
'@browserbasehq/sdk': 2.6.0(encoding@0.1.13)
'@getzep/zep-cloud': 1.0.12(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)(langchain@0.3.11(e417b0b770c7ddaee3cf4ccf28b37200))
'@getzep/zep-cloud': 1.0.12(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)(langchain@0.3.11(259cf7eaee7343a58498f432f7938ad9))
'@getzep/zep-js': 0.9.0
'@google-ai/generativelanguage': 2.6.0(encoding@0.1.13)
'@google-cloud/storage': 7.12.1(encoding@0.1.13)
@@ -20984,7 +20984,7 @@ snapshots:
axios-retry@4.5.0(axios@1.9.0):
dependencies:
axios: 1.9.0
axios: 1.9.0(debug@4.4.1)
is-retry-allowed: 2.2.0
axios@1.8.3:
@@ -20995,14 +20995,6 @@ snapshots:
transitivePeerDependencies:
- debug
axios@1.9.0:
dependencies:
follow-redirects: 1.15.9(debug@4.3.6)
form-data: 4.0.2
proxy-from-env: 1.1.0
transitivePeerDependencies:
- debug
axios@1.9.0(debug@4.3.6):
dependencies:
follow-redirects: 1.15.9(debug@4.3.6)
@@ -21021,7 +21013,7 @@ snapshots:
axios@1.9.0(debug@4.4.1):
dependencies:
follow-redirects: 1.15.9(debug@4.4.1)
follow-redirects: 1.15.9(debug@4.3.6)
form-data: 4.0.2
proxy-from-env: 1.1.0
transitivePeerDependencies:
@@ -21277,7 +21269,7 @@ snapshots:
bundlemon@3.1.0(typescript@5.8.2):
dependencies:
axios: 1.9.0
axios: 1.9.0(debug@4.4.1)
axios-retry: 4.5.0(axios@1.9.0)
brotli-size: 4.0.0
bundlemon-utils: 2.0.1
@@ -22670,7 +22662,7 @@ snapshots:
eslint-import-resolver-node@0.3.9:
dependencies:
debug: 3.2.7(supports-color@8.1.1)
debug: 3.2.7(supports-color@5.5.0)
is-core-module: 2.13.1
resolve: 1.22.8
transitivePeerDependencies:
@@ -22695,7 +22687,7 @@ snapshots:
eslint-module-utils@2.8.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
dependencies:
debug: 3.2.7(supports-color@8.1.1)
debug: 3.2.7(supports-color@5.5.0)
optionalDependencies:
'@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.8.2)
eslint: 8.57.0
@@ -22715,7 +22707,7 @@ snapshots:
array.prototype.findlastindex: 1.2.3
array.prototype.flat: 1.3.2
array.prototype.flatmap: 1.3.2
debug: 3.2.7(supports-color@8.1.1)
debug: 3.2.7(supports-color@5.5.0)
doctrine: 2.1.0
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
@@ -23225,10 +23217,6 @@ snapshots:
optionalDependencies:
debug: 4.4.0
follow-redirects@1.15.9(debug@4.4.1):
optionalDependencies:
debug: 4.4.1(supports-color@8.1.1)
for-each@0.3.3:
dependencies:
is-callable: 1.2.7
@@ -23544,7 +23532,7 @@ snapshots:
array-parallel: 0.1.3
array-series: 0.1.5
cross-spawn: 7.0.6
debug: 3.2.7(supports-color@8.1.1)
debug: 3.2.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -23853,7 +23841,7 @@ snapshots:
isstream: 0.1.2
jsonwebtoken: 9.0.2
mime-types: 2.1.35
retry-axios: 2.6.0(axios@1.9.0)
retry-axios: 2.6.0(axios@1.9.0(debug@4.4.1))
tough-cookie: 4.1.4
transitivePeerDependencies:
- supports-color
@@ -23918,7 +23906,7 @@ snapshots:
infisical-node@1.3.0:
dependencies:
axios: 1.9.0
axios: 1.9.0(debug@4.4.1)
dotenv: 16.3.1
tweetnacl: 1.0.3
tweetnacl-util: 0.15.1
@@ -24845,7 +24833,7 @@ snapshots:
kuler@2.0.0: {}
langchain@0.3.11(e417b0b770c7ddaee3cf4ccf28b37200):
langchain@0.3.11(259cf7eaee7343a58498f432f7938ad9):
dependencies:
'@langchain/core': 0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))
'@langchain/openai': 0.3.17(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)
@@ -24869,7 +24857,7 @@ snapshots:
'@langchain/groq': 0.1.3(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)
'@langchain/mistralai': 0.2.0(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))
'@langchain/ollama': 0.1.4(@langchain/core@0.3.48(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))
axios: 1.9.0
axios: 1.9.0(debug@4.4.1)
cheerio: 1.0.0
handlebars: 4.7.8
transitivePeerDependencies:
@@ -26445,7 +26433,7 @@ snapshots:
pdf-parse@1.1.1:
dependencies:
debug: 3.2.7(supports-color@8.1.1)
debug: 3.2.7(supports-color@5.5.0)
node-ensure: 0.0.0
transitivePeerDependencies:
- supports-color
@@ -26670,7 +26658,7 @@ snapshots:
posthog-node@3.2.1:
dependencies:
axios: 1.9.0
axios: 1.9.0(debug@4.4.1)
rusha: 0.8.14
transitivePeerDependencies:
- debug
@@ -27247,9 +27235,9 @@ snapshots:
onetime: 5.1.2
signal-exit: 3.0.7
retry-axios@2.6.0(axios@1.9.0):
retry-axios@2.6.0(axios@1.9.0(debug@4.4.1)):
dependencies:
axios: 1.9.0
axios: 1.9.0(debug@4.4.1)
retry-request@7.0.2(encoding@0.1.13):
dependencies:
@@ -27274,7 +27262,7 @@ snapshots:
rhea@1.0.24:
dependencies:
debug: 3.2.7(supports-color@8.1.1)
debug: 3.2.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -27704,7 +27692,7 @@ snapshots:
asn1.js: 5.4.1
asn1.js-rfc2560: 5.0.1(asn1.js@5.4.1)
asn1.js-rfc5280: 3.0.0
axios: 1.9.0
axios: 1.9.0(debug@4.4.1)
big-integer: 1.6.52
bignumber.js: 9.1.2
binascii: 0.0.2

View File

@@ -37,7 +37,7 @@
"@n8n/decorators#lint",
"@n8n/constants#lint",
"@n8n/backend-common#lint",
"@n8n/integration-test-utils#lint",
"@n8n/backend-test-utils#lint",
"@n8n/db#lint",
"@n8n/di#lint",
"@n8n/client-oauth2#lint",