mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-17 10:02:05 +00:00
refactor(core): Use DI in source-control. add more tests (#12554)
This commit is contained in:
committed by
GitHub
parent
b2cbed9865
commit
25a79ccf40
@@ -10,6 +10,7 @@ import fsp from 'node:fs/promises';
|
||||
import { CredentialsRepository } from '@/databases/repositories/credentials.repository';
|
||||
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
||||
import { SharedCredentialsRepository } from '@/databases/repositories/shared-credentials.repository';
|
||||
import { UserRepository } from '@/databases/repositories/user.repository';
|
||||
import { SourceControlImportService } from '@/environments.ee/source-control/source-control-import.service.ee';
|
||||
import type { ExportableCredential } from '@/environments.ee/source-control/types/exportable-credential';
|
||||
|
||||
@@ -21,20 +22,36 @@ import { randomCredentialPayload } from '../shared/random';
|
||||
import * as testDb from '../shared/test-db';
|
||||
|
||||
describe('SourceControlImportService', () => {
|
||||
let credentialsRepository: CredentialsRepository;
|
||||
let projectRepository: ProjectRepository;
|
||||
let sharedCredentialsRepository: SharedCredentialsRepository;
|
||||
let userRepository: UserRepository;
|
||||
let service: SourceControlImportService;
|
||||
const cipher = mockInstance(Cipher);
|
||||
|
||||
beforeAll(async () => {
|
||||
await testDb.init();
|
||||
|
||||
credentialsRepository = Container.get(CredentialsRepository);
|
||||
projectRepository = Container.get(ProjectRepository);
|
||||
sharedCredentialsRepository = Container.get(SharedCredentialsRepository);
|
||||
userRepository = Container.get(UserRepository);
|
||||
service = new SourceControlImportService(
|
||||
mock(),
|
||||
mock(),
|
||||
mock(),
|
||||
mock(),
|
||||
credentialsRepository,
|
||||
projectRepository,
|
||||
mock(),
|
||||
mock(),
|
||||
sharedCredentialsRepository,
|
||||
userRepository,
|
||||
mock(),
|
||||
mock(),
|
||||
mock(),
|
||||
mock<InstanceSettings>({ n8nFolder: '/some-path' }),
|
||||
);
|
||||
|
||||
await testDb.init();
|
||||
});
|
||||
|
||||
afterEach(async () => {
|
||||
@@ -75,7 +92,7 @@ describe('SourceControlImportService', () => {
|
||||
|
||||
const personalProject = await getPersonalProject(member);
|
||||
|
||||
const sharing = await Container.get(SharedCredentialsRepository).findOneBy({
|
||||
const sharing = await sharedCredentialsRepository.findOneBy({
|
||||
credentialsId: CREDENTIAL_ID,
|
||||
projectId: personalProject.id,
|
||||
role: 'credential:owner',
|
||||
@@ -112,7 +129,7 @@ describe('SourceControlImportService', () => {
|
||||
|
||||
const personalProject = await getPersonalProject(importingUser);
|
||||
|
||||
const sharing = await Container.get(SharedCredentialsRepository).findOneBy({
|
||||
const sharing = await sharedCredentialsRepository.findOneBy({
|
||||
credentialsId: CREDENTIAL_ID,
|
||||
projectId: personalProject.id,
|
||||
role: 'credential:owner',
|
||||
@@ -149,7 +166,7 @@ describe('SourceControlImportService', () => {
|
||||
|
||||
const personalProject = await getPersonalProject(importingUser);
|
||||
|
||||
const sharing = await Container.get(SharedCredentialsRepository).findOneBy({
|
||||
const sharing = await sharedCredentialsRepository.findOneBy({
|
||||
credentialsId: CREDENTIAL_ID,
|
||||
projectId: personalProject.id,
|
||||
role: 'credential:owner',
|
||||
@@ -190,7 +207,7 @@ describe('SourceControlImportService', () => {
|
||||
|
||||
const personalProject = await getPersonalProject(importingUser);
|
||||
|
||||
const sharing = await Container.get(SharedCredentialsRepository).findOneBy({
|
||||
const sharing = await sharedCredentialsRepository.findOneBy({
|
||||
credentialsId: CREDENTIAL_ID,
|
||||
projectId: personalProject.id,
|
||||
role: 'credential:owner',
|
||||
@@ -223,7 +240,7 @@ describe('SourceControlImportService', () => {
|
||||
cipher.encrypt.mockReturnValue('some-encrypted-data');
|
||||
|
||||
{
|
||||
const project = await Container.get(ProjectRepository).findOne({
|
||||
const project = await projectRepository.findOne({
|
||||
where: [
|
||||
{
|
||||
id: '1234-asdf',
|
||||
@@ -241,7 +258,7 @@ describe('SourceControlImportService', () => {
|
||||
importingUser.id,
|
||||
);
|
||||
|
||||
const sharing = await Container.get(SharedCredentialsRepository).findOne({
|
||||
const sharing = await sharedCredentialsRepository.findOne({
|
||||
where: {
|
||||
credentialsId: CREDENTIAL_ID,
|
||||
role: 'credential:owner',
|
||||
@@ -288,7 +305,7 @@ describe('SourceControlImportService', () => {
|
||||
importingUser.id,
|
||||
);
|
||||
|
||||
const sharing = await Container.get(SharedCredentialsRepository).findOneBy({
|
||||
const sharing = await sharedCredentialsRepository.findOneBy({
|
||||
credentialsId: CREDENTIAL_ID,
|
||||
projectId: project.id,
|
||||
role: 'credential:owner',
|
||||
@@ -332,7 +349,7 @@ describe('SourceControlImportService', () => {
|
||||
);
|
||||
|
||||
await expect(
|
||||
Container.get(SharedCredentialsRepository).findBy({
|
||||
sharedCredentialsRepository.findBy({
|
||||
credentialsId: credential.id,
|
||||
}),
|
||||
).resolves.toMatchObject([
|
||||
@@ -342,7 +359,7 @@ describe('SourceControlImportService', () => {
|
||||
},
|
||||
]);
|
||||
await expect(
|
||||
Container.get(CredentialsRepository).findBy({
|
||||
credentialsRepository.findBy({
|
||||
id: credential.id,
|
||||
}),
|
||||
).resolves.toMatchObject([
|
||||
|
||||
Reference in New Issue
Block a user