first commit
Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled

This commit is contained in:
2026-03-17 16:22:57 +03:30
commit 3d5eaf9445
15349 changed files with 2847338 additions and 0 deletions
@@ -0,0 +1,95 @@
import { NodeTestHarness } from '@nodes-testing/node-test-harness';
import nock from 'nock';
describe('Phantombuster Node', () => {
const credentials = {
phantombusterApi: {
apiKey: 'test-api-key',
},
};
describe('Launch Agent Without Arguments', () => {
beforeAll(() => {
const mock = nock('https://api.phantombuster.com');
mock
.post('/api/v2/agents/launch', (body) => {
return body.id === 'test-agent-123' && !body.arguments && !body.bonusArgument;
})
.reply(200, { containerId: 'container-456' });
});
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['launch-without-arguments.workflow.json'],
});
});
describe('Launch Agent With Arguments No Bonus', () => {
beforeAll(() => {
const mock = nock('https://api.phantombuster.com');
mock
.post('/api/v2/agents/launch', (body) => {
return (
body.id === 'test-agent-123' &&
body.arguments &&
body.arguments.testKey === 'testValue' &&
!body.bonusArgument
);
})
.reply(200, { containerId: 'container-456' });
});
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['launch-with-arguments-no-bonus.workflow.json'],
});
});
describe('Launch Agent With Bonus Arguments', () => {
beforeAll(() => {
const mock = nock('https://api.phantombuster.com');
mock
.post('/api/v2/agents/launch', (body) => {
return (
body.id === 'test-agent-123' &&
body.arguments &&
body.arguments.testKey === 'testValue' &&
body.bonusArgument &&
body.bonusArgument.bonusKey === 'bonusValue'
);
})
.reply(200, { containerId: 'container-456' });
});
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['launch-with-bonus-arguments.workflow.json'],
});
});
describe('Launch Agent With JSON Arguments', () => {
beforeAll(() => {
const mock = nock('https://api.phantombuster.com');
mock
.post('/api/v2/agents/launch', (body) => {
return (
body.id === 'test-agent-123' &&
body.arguments &&
body.arguments.complexKey === 'complexValue' &&
body.arguments.nestedObject &&
body.arguments.nestedObject.nested === 'value'
);
})
.reply(200, { containerId: 'container-456' });
});
new NodeTestHarness().setupTests({
credentials,
workflowFiles: ['launch-with-json-arguments.workflow.json'],
});
});
});
@@ -0,0 +1,69 @@
{
"name": "Phantombuster Launch With Arguments No Bonus Test",
"nodes": [
{
"parameters": {},
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "When clicking 'Execute Workflow'",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0]
},
{
"parameters": {
"resource": "agent",
"operation": "launch",
"agentId": "test-agent-123",
"jsonParameters": false,
"resolveData": false,
"additionalFields": {
"argumentsUi": {
"argumentValues": [
{
"key": "testKey",
"value": "testValue"
}
]
}
}
},
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"name": "Phantombuster",
"type": "n8n-nodes-base.phantombuster",
"typeVersion": 1,
"position": [220, 0],
"credentials": {
"phantombusterApi": {
"id": "test-cred-id",
"name": "Phantombuster API"
}
}
}
],
"pinData": {
"Phantombuster": [
{
"json": {
"containerId": "container-456"
}
}
]
},
"connections": {
"When clicking 'Execute Workflow'": {
"main": [
[
{
"node": "Phantombuster",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
}
}
@@ -0,0 +1,77 @@
{
"name": "Phantombuster Launch With Bonus Arguments Test",
"nodes": [
{
"parameters": {},
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "When clicking 'Execute Workflow'",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0]
},
{
"parameters": {
"resource": "agent",
"operation": "launch",
"agentId": "test-agent-123",
"jsonParameters": false,
"resolveData": false,
"additionalFields": {
"argumentsUi": {
"argumentValues": [
{
"key": "testKey",
"value": "testValue"
}
]
},
"bonusArgumentUi": {
"bonusArgumentValue": [
{
"key": "bonusKey",
"value": "bonusValue"
}
]
}
}
},
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"name": "Phantombuster",
"type": "n8n-nodes-base.phantombuster",
"typeVersion": 1,
"position": [220, 0],
"credentials": {
"phantombusterApi": {
"id": "test-cred-id",
"name": "Phantombuster API"
}
}
}
],
"pinData": {
"Phantombuster": [
{
"json": {
"containerId": "container-456"
}
}
]
},
"connections": {
"When clicking 'Execute Workflow'": {
"main": [
[
{
"node": "Phantombuster",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
}
}
@@ -0,0 +1,62 @@
{
"name": "Phantombuster Launch With JSON Arguments Test",
"nodes": [
{
"parameters": {},
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "When clicking 'Execute Workflow'",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0]
},
{
"parameters": {
"resource": "agent",
"operation": "launch",
"agentId": "test-agent-123",
"jsonParameters": true,
"resolveData": false,
"additionalFields": {
"argumentsJson": "{\"complexKey\":\"complexValue\",\"nestedObject\":{\"nested\":\"value\"}}"
}
},
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"name": "Phantombuster",
"type": "n8n-nodes-base.phantombuster",
"typeVersion": 1,
"position": [220, 0],
"credentials": {
"phantombusterApi": {
"id": "test-cred-id",
"name": "Phantombuster API"
}
}
}
],
"pinData": {
"Phantombuster": [
{
"json": {
"containerId": "container-456"
}
}
]
},
"connections": {
"When clicking 'Execute Workflow'": {
"main": [
[
{
"node": "Phantombuster",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
}
}
@@ -0,0 +1,59 @@
{
"name": "Phantombuster Launch Without Arguments Test",
"nodes": [
{
"parameters": {},
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "When clicking 'Execute Workflow'",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0]
},
{
"parameters": {
"resource": "agent",
"operation": "launch",
"agentId": "test-agent-123",
"jsonParameters": false,
"resolveData": false
},
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"name": "Phantombuster",
"type": "n8n-nodes-base.phantombuster",
"typeVersion": 1,
"position": [220, 0],
"credentials": {
"phantombusterApi": {
"id": "test-cred-id",
"name": "Phantombuster API"
}
}
}
],
"pinData": {
"Phantombuster": [
{
"json": {
"containerId": "container-456"
}
}
]
},
"connections": {
"When clicking 'Execute Workflow'": {
"main": [
[
{
"node": "Phantombuster",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
}
}