mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-19 11:01:15 +00:00
test: Migrate if node test from cypress -> playwright (#19448)
This commit is contained in:
50
packages/testing/playwright/tests/ui/30-if-node.spec.ts
Normal file
50
packages/testing/playwright/tests/ui/30-if-node.spec.ts
Normal file
@@ -0,0 +1,50 @@
|
||||
import { IF_NODE_NAME } from '../../config/constants';
|
||||
import { test, expect } from '../../fixtures/base';
|
||||
|
||||
const FILTER_PARAM_NAME = 'conditions';
|
||||
|
||||
test.describe('If Node (filter component)', () => {
|
||||
test.beforeEach(async ({ n8n }) => {
|
||||
await n8n.start.fromBlankCanvas();
|
||||
});
|
||||
|
||||
test('should be able to create and delete multiple conditions', async ({ n8n }) => {
|
||||
await n8n.canvas.addNode(IF_NODE_NAME, { closeNDV: false });
|
||||
|
||||
// Default state
|
||||
await expect(n8n.ndv.getFilterComponent(FILTER_PARAM_NAME)).toBeVisible();
|
||||
await expect(n8n.ndv.getFilterConditions(FILTER_PARAM_NAME)).toHaveCount(1);
|
||||
await expect(
|
||||
n8n.ndv.getFilterConditionOperator(FILTER_PARAM_NAME).locator('input'),
|
||||
).toHaveValue('is equal to');
|
||||
|
||||
// Add
|
||||
await n8n.ndv.addFilterCondition(FILTER_PARAM_NAME);
|
||||
await n8n.ndv.getFilterConditionLeft(FILTER_PARAM_NAME, 0).locator('input').fill('first left');
|
||||
await n8n.ndv.getFilterConditionLeft(FILTER_PARAM_NAME, 1).locator('input').fill('second left');
|
||||
await n8n.ndv.addFilterCondition(FILTER_PARAM_NAME);
|
||||
await expect(n8n.ndv.getFilterConditions(FILTER_PARAM_NAME)).toHaveCount(3);
|
||||
|
||||
// Delete
|
||||
await n8n.ndv.removeFilterCondition(FILTER_PARAM_NAME, 0);
|
||||
await expect(n8n.ndv.getFilterConditions(FILTER_PARAM_NAME)).toHaveCount(2);
|
||||
await expect(n8n.ndv.getFilterConditionLeft(FILTER_PARAM_NAME, 0).locator('input')).toHaveValue(
|
||||
'second left',
|
||||
);
|
||||
await n8n.ndv.removeFilterCondition(FILTER_PARAM_NAME, 1);
|
||||
await expect(n8n.ndv.getFilterConditions(FILTER_PARAM_NAME)).toHaveCount(1);
|
||||
});
|
||||
|
||||
test('should correctly evaluate conditions', async ({ n8n }) => {
|
||||
await n8n.start.fromImportedWorkflow('Test_workflow_filter.json');
|
||||
|
||||
await n8n.canvas.clickExecuteWorkflowButton();
|
||||
|
||||
await n8n.canvas.openNode('Then');
|
||||
await expect(n8n.ndv.outputPanel.get()).toContainText('3 items');
|
||||
await n8n.ndv.close();
|
||||
|
||||
await n8n.canvas.openNode('Else');
|
||||
await expect(n8n.ndv.outputPanel.get()).toContainText('1 item');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user