fix(core): Missing pairing info (#7326)

Github issue / Community forum post (link here to close automatically):
This commit is contained in:
Michael Kret
2023-10-10 18:36:20 +03:00
committed by GitHub
parent 6479eb180f
commit e2c3c7aceb
52 changed files with 363 additions and 157 deletions

View File

@@ -1,8 +1,8 @@
import type { IDataObject, INode } from 'n8n-workflow';
import { createMockExecuteFunction } from '@test/nodes/Helpers';
import mysql2 from 'mysql2/promise';
import * as deleteTable from '../../v2/actions/database/deleteTable.operation';
import * as executeQuery from '../../v2/actions/database/executeQuery.operation';
import * as insert from '../../v2/actions/database/insert.operation';
import * as select from '../../v2/actions/database/select.operation';
@@ -11,8 +11,7 @@ import * as upsert from '../../v2/actions/database/upsert.operation';
import type { Mysql2Pool, QueryRunner } from '../../v2/helpers/interfaces';
import { configureQueryRunner } from '../../v2/helpers/utils';
import mysql2 from 'mysql2/promise';
import { createMockExecuteFunction } from '@test/nodes/Helpers';
const mySqlMockNode: INode = {
id: '1',
@@ -97,7 +96,7 @@ describe('Test MySql V2, operations', () => {
const result = await deleteTable.execute.call(fakeExecuteFunction, emptyInputItems, runQueries);
expect(result).toBeDefined();
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: [{ item: 0 }] }]);
expect(poolQuerySpy).toBeCalledTimes(1);
expect(poolQuerySpy).toBeCalledWith('DROP TABLE IF EXISTS `test_table`');
@@ -133,7 +132,7 @@ describe('Test MySql V2, operations', () => {
const result = await deleteTable.execute.call(fakeExecuteFunction, emptyInputItems, runQueries);
expect(result).toBeDefined();
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: [{ item: 0 }] }]);
expect(poolQuerySpy).toBeCalledTimes(1);
expect(poolQuerySpy).toBeCalledWith('TRUNCATE TABLE `test_table`');
@@ -183,7 +182,7 @@ describe('Test MySql V2, operations', () => {
const result = await deleteTable.execute.call(fakeExecuteFunction, emptyInputItems, runQueries);
expect(result).toBeDefined();
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: [{ item: 0 }] }]);
expect(poolQuerySpy).toBeCalledTimes(1);
expect(poolQuerySpy).toBeCalledWith(
@@ -312,7 +311,7 @@ describe('Test MySql V2, operations', () => {
const result = await select.execute.call(fakeExecuteFunction, emptyInputItems, runQueries);
expect(result).toBeDefined();
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: { item: 0 } }]);
const connectionBeginTransactionSpy = jest.spyOn(fakeConnection, 'beginTransaction');
const connectionCommitSpy = jest.spyOn(fakeConnection, 'commit');
@@ -378,7 +377,7 @@ describe('Test MySql V2, operations', () => {
);
expect(result).toBeDefined();
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: { item: 0 } }]);
expect(connectionQuerySpy).toBeCalledTimes(1);
expect(connectionQuerySpy).toBeCalledWith(
@@ -439,7 +438,10 @@ describe('Test MySql V2, operations', () => {
);
expect(result).toBeDefined();
expect(result).toEqual([{ json: { success: true } }, { json: { success: true } }]);
expect(result).toEqual([
{ json: { success: true }, pairedItem: { item: 0 } },
{ json: { success: true }, pairedItem: { item: 1 } },
]);
expect(connectionQuerySpy).toBeCalledTimes(2);
expect(connectionQuerySpy).toBeCalledWith(
@@ -501,7 +503,7 @@ describe('Test MySql V2, operations', () => {
);
expect(result).toBeDefined();
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: [{ item: 0 }, { item: 1 }] }]);
expect(poolQuerySpy).toBeCalledTimes(1);
expect(poolQuerySpy).toBeCalledWith(

View File

@@ -67,7 +67,7 @@ describe('Test MySql V2, runQueries', () => {
expect(result).toBeDefined();
expect(result).toHaveLength(1);
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: [{ item: 0 }] }]);
expect(poolGetConnectionSpy).toBeCalledTimes(1);
@@ -108,7 +108,7 @@ describe('Test MySql V2, runQueries', () => {
expect(result).toBeDefined();
expect(result).toHaveLength(1);
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: { item: 0 } }]);
expect(poolGetConnectionSpy).toBeCalledTimes(1);
@@ -155,7 +155,7 @@ describe('Test MySql V2, runQueries', () => {
expect(result).toBeDefined();
expect(result).toHaveLength(1);
expect(result).toEqual([{ json: { success: true } }]);
expect(result).toEqual([{ json: { success: true }, pairedItem: { item: 0 } }]);
expect(poolGetConnectionSpy).toBeCalledTimes(1);