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
53 lines
1.7 KiB
TypeScript
53 lines
1.7 KiB
TypeScript
import { test, expect } from '../../../fixtures/base';
|
|
|
|
test.describe('UI Test Entry Points', {
|
|
annotation: [
|
|
{ type: 'owner', description: 'Catalysts' },
|
|
],
|
|
}, () => {
|
|
test.describe('Entry Point: Home Page', () => {
|
|
test('should navigate from home', async ({ n8n }) => {
|
|
await n8n.start.fromHome();
|
|
expect(n8n.page.url()).toContain('/home/workflows');
|
|
});
|
|
});
|
|
|
|
test.describe('Entry Point: Blank Canvas', () => {
|
|
test('should navigate from blank canvas', async ({ n8n }) => {
|
|
await n8n.start.fromBlankCanvas();
|
|
await expect(n8n.canvas.canvasPane()).toBeVisible();
|
|
});
|
|
});
|
|
|
|
test.describe('Entry Point: Basic Workflow Creation', () => {
|
|
test('should create a new project and workflow', async ({ n8n }) => {
|
|
await n8n.start.fromNewProjectBlankCanvas();
|
|
await expect(n8n.canvas.canvasPane()).toBeVisible();
|
|
});
|
|
});
|
|
|
|
test.describe('Entry Point: Imported Workflow', () => {
|
|
test('should import a webhook workflow', async ({ n8n }) => {
|
|
const workflowImportResult = await n8n.start.fromImportedWorkflow('simple-webhook-test.json');
|
|
const { webhookPath } = workflowImportResult;
|
|
|
|
const testPayload = { message: 'Hello from Playwright test' };
|
|
|
|
await n8n.canvas.clickExecuteWorkflowButton();
|
|
await expect(n8n.canvas.getExecuteWorkflowButton()).toHaveText('Waiting for trigger event');
|
|
|
|
const webhookResponse = await n8n.page.request.post(`/webhook-test/${webhookPath}`, {
|
|
data: testPayload,
|
|
});
|
|
|
|
expect(webhookResponse.ok()).toBe(true);
|
|
});
|
|
|
|
test('should import a workflow', async ({ n8n }) => {
|
|
await n8n.start.fromImportedWorkflow('manual.json');
|
|
await n8n.workflowComposer.executeWorkflowAndWaitForNotification('Success');
|
|
await expect(n8n.canvas.canvasPane()).toBeVisible();
|
|
});
|
|
});
|
|
});
|