mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-26 05:04:05 -08:00
5cdcb61f66
Co-authored-by: Omar Ajoue <krynble@gmail.com>
43 lines
1.4 KiB
TypeScript
43 lines
1.4 KiB
TypeScript
import { BasePage } from '../base';
|
|
import { WorkflowsPage } from '../workflows';
|
|
|
|
export class MainSidebar extends BasePage {
|
|
getters = {
|
|
menuItem: (id: string) => cy.getByTestId('menu-item').get('#' + id),
|
|
settings: () => this.getters.menuItem('settings'),
|
|
settingsBack: () => cy.getByTestId('settings-back'),
|
|
templates: () => this.getters.menuItem('templates'),
|
|
workflows: () => this.getters.menuItem('workflows'),
|
|
credentials: () => this.getters.menuItem('credentials'),
|
|
executions: () => this.getters.menuItem('executions'),
|
|
adminPanel: () => this.getters.menuItem('cloud-admin'),
|
|
userMenu: () => cy.getByTestId('user-menu'),
|
|
logo: () => cy.getByTestId('n8n-logo'),
|
|
};
|
|
|
|
actions = {
|
|
goToSettings: () => {
|
|
this.getters.userMenu().click();
|
|
cy.getByTestId('user-menu-item-settings').should('be.visible').click();
|
|
},
|
|
goToCredentials: () => {
|
|
this.getters.credentials().should('be.visible');
|
|
cy.get('[data-old-overflow]').should('not.exist');
|
|
this.getters.credentials().click();
|
|
},
|
|
openUserMenu: () => {
|
|
this.getters.userMenu().click();
|
|
},
|
|
closeSettings: () => {
|
|
this.getters.settingsBack().click();
|
|
},
|
|
signout: () => {
|
|
const workflowsPage = new WorkflowsPage();
|
|
cy.visit(workflowsPage.url);
|
|
this.actions.openUserMenu();
|
|
cy.getByTestId('user-menu-item-logout').click();
|
|
cy.wrap(Cypress.session.clearAllSavedSessions());
|
|
},
|
|
};
|
|
}
|