mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-18 02:21:13 +00:00
perf(core): Batch items sent in runonceforeachitem mode (no-changelog) (#11870)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
This commit is contained in:
@@ -1,14 +1,17 @@
|
||||
import { BuiltInsParserState } from '../built-ins-parser-state';
|
||||
|
||||
describe('BuiltInsParserState', () => {
|
||||
describe('toDataRequestSpecification', () => {
|
||||
describe('toDataRequestParams', () => {
|
||||
it('should return empty array when no properties are marked as needed', () => {
|
||||
const state = new BuiltInsParserState();
|
||||
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: [],
|
||||
env: false,
|
||||
input: false,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: false,
|
||||
},
|
||||
prevNode: false,
|
||||
});
|
||||
});
|
||||
@@ -20,7 +23,10 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: 'all',
|
||||
env: false,
|
||||
input: true,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: true,
|
||||
},
|
||||
prevNode: false,
|
||||
});
|
||||
});
|
||||
@@ -33,7 +39,10 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: ['Node1', 'Node2'],
|
||||
env: false,
|
||||
input: false,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: false,
|
||||
},
|
||||
prevNode: false,
|
||||
});
|
||||
});
|
||||
@@ -47,7 +56,10 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: 'all',
|
||||
env: false,
|
||||
input: true,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: true,
|
||||
},
|
||||
prevNode: false,
|
||||
});
|
||||
});
|
||||
@@ -59,7 +71,10 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: [],
|
||||
env: true,
|
||||
input: false,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: false,
|
||||
},
|
||||
prevNode: false,
|
||||
});
|
||||
});
|
||||
@@ -71,7 +86,33 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: [],
|
||||
env: false,
|
||||
input: true,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: true,
|
||||
},
|
||||
prevNode: false,
|
||||
});
|
||||
});
|
||||
|
||||
it('should use the given chunk', () => {
|
||||
const state = new BuiltInsParserState();
|
||||
state.markInputAsNeeded();
|
||||
|
||||
expect(
|
||||
state.toDataRequestParams({
|
||||
count: 10,
|
||||
startIndex: 5,
|
||||
}),
|
||||
).toEqual({
|
||||
dataOfNodes: [],
|
||||
env: false,
|
||||
input: {
|
||||
chunk: {
|
||||
count: 10,
|
||||
startIndex: 5,
|
||||
},
|
||||
include: true,
|
||||
},
|
||||
prevNode: false,
|
||||
});
|
||||
});
|
||||
@@ -83,7 +124,10 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: [],
|
||||
env: false,
|
||||
input: false,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: false,
|
||||
},
|
||||
prevNode: true,
|
||||
});
|
||||
});
|
||||
@@ -98,7 +142,10 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: 'all',
|
||||
env: true,
|
||||
input: true,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: true,
|
||||
},
|
||||
prevNode: true,
|
||||
});
|
||||
});
|
||||
@@ -109,7 +156,10 @@ describe('BuiltInsParserState', () => {
|
||||
expect(state.toDataRequestParams()).toEqual({
|
||||
dataOfNodes: 'all',
|
||||
env: true,
|
||||
input: true,
|
||||
input: {
|
||||
chunk: undefined,
|
||||
include: true,
|
||||
},
|
||||
prevNode: true,
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import type { BrokerMessage } from '@/message-types';
|
||||
import type { InputDataChunkDefinition } from '@/runner-types';
|
||||
|
||||
/**
|
||||
* Class to keep track of which built-in variables are accessed in the code
|
||||
@@ -53,11 +54,16 @@ export class BuiltInsParserState {
|
||||
this.needs$prevNode = true;
|
||||
}
|
||||
|
||||
toDataRequestParams(): BrokerMessage.ToRequester.TaskDataRequest['requestParams'] {
|
||||
toDataRequestParams(
|
||||
chunk?: InputDataChunkDefinition,
|
||||
): BrokerMessage.ToRequester.TaskDataRequest['requestParams'] {
|
||||
return {
|
||||
dataOfNodes: this.needsAllNodes ? 'all' : Array.from(this.neededNodeNames),
|
||||
env: this.needs$env,
|
||||
input: this.needs$input,
|
||||
input: {
|
||||
include: this.needs$input,
|
||||
chunk,
|
||||
},
|
||||
prevNode: this.needs$prevNode,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user