diff --git a/packages/twenty-e2e-testing/lib/fixtures/blank-workflow.ts b/packages/twenty-e2e-testing/lib/fixtures/blank-workflow.ts index 3ed2f36e5..afae974ce 100644 --- a/packages/twenty-e2e-testing/lib/fixtures/blank-workflow.ts +++ b/packages/twenty-e2e-testing/lib/fixtures/blank-workflow.ts @@ -17,6 +17,7 @@ export class WorkflowVisualizerPage { readonly deactivateWorkflowButton: Locator; readonly addTriggerButton: Locator; readonly commandMenu: Locator; + readonly stepHeaderInCommandMenu: Locator; readonly workflowNameLabel: Locator; readonly triggerNode: Locator; readonly background: Locator; @@ -68,6 +69,9 @@ export class WorkflowVisualizerPage { }); this.addTriggerButton = page.getByText('Add a Trigger'); this.commandMenu = page.getByTestId('command-menu'); + this.stepHeaderInCommandMenu = this.commandMenu.getByTestId( + 'workflow-step-header', + ); this.workflowNameLabel = page .getByTestId('top-bar-title') .getByText(this.workflowName); diff --git a/packages/twenty-e2e-testing/lib/pom/settingsPage.ts b/packages/twenty-e2e-testing/lib/pom/settingsPage.ts index e2dbd557f..f51e41165 100644 --- a/packages/twenty-e2e-testing/lib/pom/settingsPage.ts +++ b/packages/twenty-e2e-testing/lib/pom/settingsPage.ts @@ -110,6 +110,10 @@ export class SettingsPage { await this.releasesLink.click(); } + async logout() { + await this.page.getByText('Logout').click(); + } + async toggleAdvancedSettings() { await this.advancedToggle.click(); } diff --git a/packages/twenty-e2e-testing/tests/workflow-creation.spec.ts b/packages/twenty-e2e-testing/tests/workflow-creation.spec.ts index 86f016337..46a3c0479 100644 --- a/packages/twenty-e2e-testing/tests/workflow-creation.spec.ts +++ b/packages/twenty-e2e-testing/tests/workflow-creation.spec.ts @@ -10,7 +10,9 @@ test('Create workflow', async ({ page }) => { const workflowsLink = page.getByRole('link', { name: 'Workflows' }); await workflowsLink.click(); - const createWorkflowButton = page.getByRole('button', { name: 'New record' }); + const createWorkflowButton = page.getByRole('button', { + name: 'Create new workflow', + }); const [createWorkflowResponse] = await Promise.all([ page.waitForResponse(async (response) => { diff --git a/packages/twenty-e2e-testing/tests/workflow-run.spec.ts b/packages/twenty-e2e-testing/tests/workflow-run.spec.ts index 880a5eb75..70635fa27 100644 --- a/packages/twenty-e2e-testing/tests/workflow-run.spec.ts +++ b/packages/twenty-e2e-testing/tests/workflow-run.spec.ts @@ -1,60 +1,58 @@ import { expect } from '@playwright/test'; import { test } from '../lib/fixtures/blank-workflow'; -test.fixme( - 'The workflow run visualizer shows the executed draft version without the last draft changes', - async ({ workflowVisualizer, page }) => { - await workflowVisualizer.createInitialTrigger('manual'); +test('The workflow run visualizer shows the executed draft version without the last draft changes', async ({ + workflowVisualizer, + page, +}) => { + await workflowVisualizer.createInitialTrigger('manual'); - const manualTriggerAvailabilitySelect = page.getByRole('button', { - name: 'When record(s) are selected', - }); + const manualTriggerAvailabilitySelect = page.getByRole('button', { + name: 'When record(s) are selected', + }); - await manualTriggerAvailabilitySelect.click(); + await manualTriggerAvailabilitySelect.click(); - const alwaysAvailableOption = page.getByText( - 'When no record(s) are selected', - ); + const alwaysAvailableOption = page.getByText( + 'When no record(s) are selected', + ); - await alwaysAvailableOption.click(); + await alwaysAvailableOption.click(); - await workflowVisualizer.closeSidePanel(); + await workflowVisualizer.closeSidePanel(); - const { createdStepId: firstStepId } = - await workflowVisualizer.createStep('create-record'); + const { createdStepId: firstStepId } = + await workflowVisualizer.createStep('create-record'); - await workflowVisualizer.closeSidePanel(); + await workflowVisualizer.closeSidePanel(); - const launchTestButton = page.getByLabel('Test Workflow'); + const launchTestButton = page.getByLabel(workflowVisualizer.workflowName); - await launchTestButton.click(); + await launchTestButton.click(); - const goToExecutionPageLink = page.getByRole('link', { - name: 'View execution details', - }); - const executionPageUrl = await goToExecutionPageLink.getAttribute('href'); - expect(executionPageUrl).not.toBeNull(); + const goToExecutionPageLink = page.getByRole('link', { + name: 'View execution details', + }); + const executionPageUrl = await goToExecutionPageLink.getAttribute('href'); + expect(executionPageUrl).not.toBeNull(); - await workflowVisualizer.deleteStep(firstStepId); + await workflowVisualizer.deleteStep(firstStepId); - await page.goto(executionPageUrl!); + await page.goto(executionPageUrl!); - const workflowRunName = page.getByText('Execution of v1'); + const workflowRunName = page.getByText( + `#1 - ${workflowVisualizer.workflowName}`, + ); - await expect(workflowRunName).toBeVisible(); + await expect(workflowRunName).toBeVisible(); - const flowTab = page.getByText('Flow', { exact: true }); + const executedFirstStepNode = workflowVisualizer.getStepNode(firstStepId); - await flowTab.click(); + await expect(executedFirstStepNode).toBeVisible(); - const executedFirstStepNode = workflowVisualizer.getStepNode(firstStepId); + await executedFirstStepNode.click(); - await expect(executedFirstStepNode).toBeVisible(); - - await executedFirstStepNode.click(); - - await expect( - workflowVisualizer.commandMenu.getByRole('textbox').first(), - ).toHaveValue('Create Record'); - }, -); + await expect(workflowVisualizer.stepHeaderInCommandMenu).toContainText( + 'Create Record', + ); +}); diff --git a/packages/twenty-front/src/modules/workflow/workflow-steps/components/WorkflowStepHeader.tsx b/packages/twenty-front/src/modules/workflow/workflow-steps/components/WorkflowStepHeader.tsx index 81003088e..ac363b0fd 100644 --- a/packages/twenty-front/src/modules/workflow/workflow-steps/components/WorkflowStepHeader.tsx +++ b/packages/twenty-front/src/modules/workflow/workflow-steps/components/WorkflowStepHeader.tsx @@ -90,7 +90,7 @@ export const WorkflowStepHeader = ({ }; return ( - +