* New channel menu using new menu system * fix e2e-tests * remove extraneous separator * lint fix * fix test after merge * update to pass properties to first menu item * fix e2etest * refactor: Update channel header menu items to use const event handlers * refactor: Extract plugin item click handler in channel header menu * refactor: Improve error handling and button click handlers in mobile channel header plugins * lint fixes * updates for code reveiw * run i18n-extract * fix unit test * fix: Close channel dropdown menu by clicking channel header title * fix: Use keyboard escape to close channel dropdown menu in e2e tests * fix cypress test * fix: Resolve MUI Menu component fragment rendering issue * cleanup * remove unneccessary css * fixing testing issues --------- Co-authored-by: Mattermost Build <build@mattermost.com>
57 строки
1.5 KiB
JavaScript
57 строки
1.5 KiB
JavaScript
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
// Buttons
|
|
|
|
Cypress.Commands.add('uiGetChannelHeaderButton', () => {
|
|
return cy.get('#channelHeaderDropdownButton').should('be.visible');
|
|
});
|
|
|
|
Cypress.Commands.add('uiGetChannelFavoriteButton', () => {
|
|
return cy.get('#toggleFavorite').should('be.visible');
|
|
});
|
|
|
|
Cypress.Commands.add('uiGetMuteButton', () => {
|
|
return cy.get('#toggleMute').should('be.visible');
|
|
});
|
|
|
|
Cypress.Commands.add('uiGetChannelMemberButton', () => {
|
|
return cy.get('#member_rhs').should('be.visible');
|
|
});
|
|
|
|
Cypress.Commands.add('uiGetChannelPinButton', () => {
|
|
return cy.get('#channelHeaderPinButton').should('be.visible');
|
|
});
|
|
|
|
Cypress.Commands.add('uiGetChannelFileButton', () => {
|
|
return cy.get('#channelHeaderFilesButton').should('be.visible');
|
|
});
|
|
|
|
// Menus
|
|
|
|
Cypress.Commands.add('uiGetChannelMenu', (options = {exist: true}) => {
|
|
if (options.exist) {
|
|
return cy.get('#channelHeaderDropdownMenu').
|
|
should('be.visible');
|
|
}
|
|
|
|
return cy.get('#channelHeaderDropdownMenu').should('not.exist');
|
|
});
|
|
|
|
Cypress.Commands.add('uiOpenChannelMenu', (item = '') => {
|
|
// # Click on channel header button
|
|
cy.uiGetChannelHeaderButton().click();
|
|
|
|
if (!item) {
|
|
// # Return the menu if no item is passed
|
|
return cy.uiGetChannelMenu();
|
|
}
|
|
|
|
// # Click on a particular item
|
|
return cy.uiGetChannelMenu().
|
|
findByText(item).
|
|
scrollIntoView().
|
|
should('be.visible').
|
|
click();
|
|
});
|