mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-26 13:14:07 -08:00
75 lines
2.2 KiB
TypeScript
75 lines
2.2 KiB
TypeScript
import { WorkflowPage } from '../pages';
|
|
import { MessageBox as MessageBoxClass } from '../pages/modals/message-box';
|
|
|
|
const workflowPage = new WorkflowPage();
|
|
const messageBox = new MessageBoxClass();
|
|
|
|
before(() => {
|
|
cy.fixture('Onboarding_workflow.json').then((data) => {
|
|
cy.intercept('GET', '/rest/workflows/from-url*', {
|
|
body: { data },
|
|
}).as('downloadWorkflowFromURL');
|
|
});
|
|
});
|
|
|
|
describe('Import workflow', () => {
|
|
describe('From URL', () => {
|
|
it('should import workflow', () => {
|
|
workflowPage.actions.visit(true);
|
|
workflowPage.getters.workflowMenu().click();
|
|
workflowPage.getters.workflowMenuItemImportFromURLItem().click();
|
|
|
|
messageBox.getters.modal().should('be.visible');
|
|
|
|
messageBox.getters.content().type('https://fakepage.com/workflow.json');
|
|
|
|
messageBox.getters.confirm().click();
|
|
|
|
workflowPage.actions.zoomToFit();
|
|
|
|
workflowPage.getters.canvasNodes().should('have.length', 4);
|
|
|
|
workflowPage.getters.errorToast().should('not.exist');
|
|
|
|
workflowPage.getters.successToast().should('not.exist');
|
|
});
|
|
|
|
it('clicking outside modal should not show error toast', () => {
|
|
workflowPage.actions.visit(true);
|
|
|
|
workflowPage.getters.workflowMenu().click();
|
|
workflowPage.getters.workflowMenuItemImportFromURLItem().click();
|
|
|
|
cy.get('body').click(0, 0);
|
|
|
|
workflowPage.getters.errorToast().should('not.exist');
|
|
});
|
|
|
|
it('canceling modal should not show error toast', () => {
|
|
workflowPage.actions.visit(true);
|
|
|
|
workflowPage.getters.workflowMenu().click();
|
|
workflowPage.getters.workflowMenuItemImportFromURLItem().click();
|
|
messageBox.getters.cancel().click();
|
|
|
|
workflowPage.getters.errorToast().should('not.exist');
|
|
});
|
|
});
|
|
|
|
describe('From File', () => {
|
|
it('should import workflow', () => {
|
|
workflowPage.actions.visit(true);
|
|
|
|
workflowPage.getters.workflowMenu().click();
|
|
workflowPage.getters.workflowMenuItemImportFromFile().click();
|
|
workflowPage.getters
|
|
.workflowImportInput()
|
|
.selectFile('cypress/fixtures/Test_workflow-actions_paste-data.json', { force: true });
|
|
cy.waitForLoad(false);
|
|
workflowPage.actions.zoomToFit();
|
|
workflowPage.getters.canvasNodes().should('have.length', 5);
|
|
workflowPage.getters.nodeConnections().should('have.length', 5);
|
|
});
|
|
});
|
|
});
|