mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-16 09:36:44 +00:00
26 lines
826 B
TypeScript
26 lines
826 B
TypeScript
import type { n8nPage } from '../pages/n8nPage';
|
|
|
|
/**
|
|
* A class for user interactions with workflows that go across multiple pages.
|
|
*/
|
|
export class WorkflowComposer {
|
|
constructor(private readonly n8n: n8nPage) {}
|
|
|
|
/**
|
|
* Executes a successful workflow and waits for the notification to be closed.
|
|
* This waits for http calls and also closes the notification.
|
|
*/
|
|
async executeWorkflowAndWaitForNotification(notificationMessage: string) {
|
|
const responsePromise = this.n8n.page.waitForResponse(
|
|
(response) =>
|
|
response.url().includes('/rest/workflows/') &&
|
|
response.url().includes('/run') &&
|
|
response.request().method() === 'POST',
|
|
);
|
|
|
|
await this.n8n.canvas.clickExecuteWorkflowButton();
|
|
await responsePromise;
|
|
await this.n8n.notifications.waitForNotificationAndClose(notificationMessage);
|
|
}
|
|
}
|