fix: Make tests pass on MySQl and Postgres (no-changelog) (#5005)

This commit is contained in:
कारतोफ्फेलस्क्रिप्ट™ 2022-12-22 11:13:22 +01:00 committed by GitHub
parent e4785da2e1
commit 365ffec3b2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 11 additions and 7 deletions

View file

@ -61,7 +61,7 @@ export class PermissionChecker {
credentialsWhereCondition,
);
const accessibleCredIds = credentialSharings.map((s) => s.credentialId.toString());
const accessibleCredIds = credentialSharings.map((s) => s.credentialsId.toString());
const inaccessibleCredIds = workflowCredIds.filter((id) => !accessibleCredIds.includes(id));

View file

@ -438,7 +438,7 @@ export function usersNamespace(this: N8nApp): void {
// workflows and credentials might be a sharee
await transactionManager.delete(SharedWorkflow, {
user: transferee,
workflow: In(sharedWorkflowIds.map((sharedWorkflowId) => ({ id: sharedWorkflowId }))),
workflowId: In(sharedWorkflowIds),
});
// Transfer ownership of owned workflows
@ -456,7 +456,7 @@ export function usersNamespace(this: N8nApp): void {
});
const sharedCredentialIds = sharedCredentials.map((sharedCredential) =>
sharedCredential.credentialId.toString(),
sharedCredential.credentialsId.toString(),
);
// Prevents issues with unique key constraints since user being assigned

View file

@ -80,7 +80,7 @@ export class CredentialsService {
select: SELECT_FIELDS,
relations: options?.relations,
where: {
id: In(userSharings.map((x) => x.credentialId)),
id: In(userSharings.map((x) => x.credentialsId)),
},
});
}

View file

@ -1,4 +1,4 @@
import { Entity, ManyToOne, RelationId } from 'typeorm';
import { Entity, ManyToOne, PrimaryColumn, RelationId } from 'typeorm';
import type { CredentialsEntity } from './CredentialsEntity';
import type { User } from './User';
import type { Role } from './Role';
@ -12,6 +12,7 @@ export class SharedCredentials extends AbstractEntity {
@ManyToOne('User', 'sharedCredentials', { primary: true })
user: User;
@PrimaryColumn()
@RelationId((sharedCredential: SharedCredentials) => sharedCredential.user)
userId: string;
@ -21,6 +22,7 @@ export class SharedCredentials extends AbstractEntity {
})
credentials: CredentialsEntity;
@PrimaryColumn()
@RelationId((sharedCredential: SharedCredentials) => sharedCredential.credentials)
credentialId: number;
credentialsId: number;
}

View file

@ -1,4 +1,4 @@
import { Entity, ManyToOne, RelationId } from 'typeorm';
import { Entity, ManyToOne, PrimaryColumn, RelationId } from 'typeorm';
import type { WorkflowEntity } from './WorkflowEntity';
import type { User } from './User';
import type { Role } from './Role';
@ -12,6 +12,7 @@ export class SharedWorkflow extends AbstractEntity {
@ManyToOne('User', 'sharedWorkflows', { primary: true })
user: User;
@PrimaryColumn()
@RelationId((sharedWorkflow: SharedWorkflow) => sharedWorkflow.user)
userId: string;
@ -21,6 +22,7 @@ export class SharedWorkflow extends AbstractEntity {
})
workflow: WorkflowEntity;
@PrimaryColumn()
@RelationId((sharedWorkflow: SharedWorkflow) => sharedWorkflow.workflow)
workflowId: number;
}