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
96 lines
2.4 KiB
TypeScript
96 lines
2.4 KiB
TypeScript
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'],
|
|
});
|
|
});
|
|
});
|