diff --git a/cypress/support/component.tsx b/cypress/support/component.tsx index 61f29601367..5fdcdd60fc6 100644 --- a/cypress/support/component.tsx +++ b/cypress/support/component.tsx @@ -4,19 +4,3 @@ import '@testing-library/cypress/add-commands'; import './commands'; import '../../packages/cypress-commands/src/index.js'; import '../../packages/main/dist/Assets.js'; - -const resizeObserverLoopErrRe = /^[^(ResizeObserver loop limit exceeded)]/; - -Cypress.on( - 'uncaught:exception', - /** - * - * @param err - * @returns {boolean} - */ (err) => { - /* returning false here prevents Cypress from failing the test */ - if (resizeObserverLoopErrRe.test(err.message)) { - return false; - } - }, -); diff --git a/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx b/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx index 17f90bc53cd..761987a8c25 100644 --- a/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx +++ b/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx @@ -2027,110 +2027,215 @@ describe('AnalyticalTable', () => { cy.get('@more').should('have.been.calledOnce'); }); - it('pop-in columns', () => { - document.body.style.margin = '0px'; + if (reactVersion.startsWith('19')) { ['ltr', 'rtl'].forEach((dir) => { - cy.mount(); - cy.viewport(801, 1024); - cy.findByText('Name').should('be.visible'); - cy.findByText('Age').should('be.visible'); - cy.findByText('Friend Name').should('be.visible'); - cy.findByText('Custom original Header1').should('be.visible'); - cy.findByText('Custom original Header2').should('be.visible'); - cy.findByText('Custom Header').should('be.visible'); - cy.findByText('Custom Header').should('be.visible'); - cy.findByText('PopinDisplay Modes').should('be.visible').should('have.attr', 'ui5-text'); - cy.findAllByTestId('popinCell').should('exist'); - cy.contains('Custom Cell 2').should('be.visible'); - - cy.contains('Custom Header 1').should('not.exist'); - cy.contains('Custom Header 2').should('not.exist'); - cy.contains('pop-in content').should('not.exist'); - - cy.viewport(800, 1024); - cy.wait(200); - - cy.findByText('Name').should('be.visible'); - cy.findByText('Age').should('be.visible'); - // header - cy.findByText('Friend Name').should('not.exist'); - // cell - cy.contains('Friend Name').should('be.visible'); - cy.findByText('Custom original Header1').should('not.exist'); - cy.findByText('Custom original Header2').should('not.exist'); - cy.contains('Custom Header').should('exist'); - cy.contains('Custom Cell 2').should('be.visible'); - - cy.contains('Custom Header 1').should('be.visible'); - cy.contains('Custom Header 2').should('be.visible'); - cy.contains('pop-in content').should('exist'); - cy.contains('C').should('exist'); - cy.findAllByTestId('popinCell').should('exist'); - cy.findAllByText('PopinDisplay Modes:').as('popinHeader').should('be.exist'); - //popinDisplay: Block - cy.get('@popinHeader').parent().should('have.css', 'flex-direction', 'column'); - - cy.viewport(600, 1024); - cy.wait(200); - cy.contains('Age').should('not.exist'); - cy.contains('40').should('not.exist'); + it(`pop-in columns (${dir})`, () => { + document.body.style.margin = '0px'; + cy.mount(); + cy.viewport(801, 1024); + cy.findByText('Name').should('be.visible'); + cy.findByText('Age').should('be.visible'); + cy.findByText('Friend Name').should('be.visible'); + cy.findByText('Custom original Header1').should('be.visible'); + cy.findByText('Custom original Header2').should('be.visible'); + cy.findByText('Custom Header').should('be.visible'); + cy.findByText('Custom Header').should('be.visible'); + cy.findByText('PopinDisplay Modes').should('be.visible').should('have.attr', 'ui5-text'); + cy.findAllByTestId('popinCell').should('exist'); + cy.contains('Custom Cell 2').should('be.visible'); + + cy.contains('Custom Header 1').should('not.exist'); + cy.contains('Custom Header 2').should('not.exist'); + cy.contains('pop-in content').should('not.exist'); + + cy.viewport(800, 1024); + cy.wait(200); + + cy.findByText('Name').should('be.visible'); + cy.findByText('Age').should('be.visible'); + // header + cy.findByText('Friend Name').should('not.exist'); + // cell + cy.contains('Friend Name').should('be.visible'); + cy.findByText('Custom original Header1').should('not.exist'); + cy.findByText('Custom original Header2').should('not.exist'); + cy.contains('Custom Header').should('exist'); + cy.contains('Custom Cell 2').should('be.visible'); + + cy.contains('Custom Header 1').should('be.visible'); + cy.contains('Custom Header 2').should('be.visible'); + cy.contains('pop-in content').should('exist'); + cy.contains('C').should('exist'); + cy.findAllByTestId('popinCell').should('exist'); + cy.findAllByText('PopinDisplay Modes:').as('popinHeader').should('be.exist'); + //popinDisplay: Block + cy.get('@popinHeader').parent().should('have.css', 'flex-direction', 'column'); + + cy.viewport(600, 1024); + cy.wait(200); + cy.contains('Age').should('not.exist'); + cy.contains('40').should('not.exist'); - cy.mount( - { - return ( - - Popin Cell - - ); + cy.mount( + { + return ( + + Popin Cell + + ); + }, }, - }, - ]} - dir={dir} - />, - ); - cy.findAllByText('PopinDisplay Modes:').as('popinHeader').should('be.exist'); - //popinDisplay: Row - cy.get('@popinHeader').parent().should('have.css', 'flex-direction', 'row'); - cy.findAllByTestId('popinCell').should('exist'); + ]} + dir={dir} + />, + ); + cy.findAllByText('PopinDisplay Modes:').as('popinHeader').should('be.exist'); + //popinDisplay: Row + cy.get('@popinHeader').parent().should('have.css', 'flex-direction', 'row'); + cy.findAllByTestId('popinCell').should('exist'); - cy.mount( - { - return ( - - Popin Cell - - ); + cy.mount( + { + return ( + + Popin Cell + + ); + }, }, - }, - ]} - dir={dir} - />, - ); - //popinDisplay: WithoutHeader - cy.findAllByText('PopinDisplay Modes:').should('not.exist'); - cy.findAllByTestId('popinCell').should('exist'); + ]} + dir={dir} + />, + ); + //popinDisplay: WithoutHeader + cy.findAllByText('PopinDisplay Modes:').should('not.exist'); + cy.findAllByTestId('popinCell').should('exist'); + }); }); - }); + } else { + ['ltr', 'rtl'].forEach((dir) => { + it(`pop-in columns (${dir}) - 801 x 1024`, { viewportWidth: 801, viewportHeight: 1024 }, () => { + document.body.style.margin = '0px'; + cy.mount(); + cy.findByText('Name').should('be.visible'); + cy.findByText('Age').should('be.visible'); + cy.findByText('Friend Name').should('be.visible'); + cy.findByText('Custom original Header1').should('be.visible'); + cy.findByText('Custom original Header2').should('be.visible'); + cy.findByText('Custom Header').should('be.visible'); + cy.findByText('Custom Header').should('be.visible'); + cy.findByText('PopinDisplay Modes').should('be.visible').should('have.attr', 'ui5-text'); + cy.findAllByTestId('popinCell').should('exist'); + cy.contains('Custom Cell 2').should('be.visible'); + + cy.contains('Custom Header 1').should('not.exist'); + cy.contains('Custom Header 2').should('not.exist'); + cy.contains('pop-in content').should('not.exist'); + }); + it(`pop-in columns (${dir}) - 800 x 1024`, { viewportWidth: 800, viewportHeight: 1024 }, () => { + cy.mount(); + cy.findByText('Name').should('be.visible'); + cy.findByText('Age').should('be.visible'); + // header + cy.findByText('Friend Name').should('not.exist'); + // cell + cy.contains('Friend Name').should('be.visible'); + cy.findByText('Custom original Header1').should('not.exist'); + cy.findByText('Custom original Header2').should('not.exist'); + cy.contains('Custom Header').should('exist'); + cy.contains('Custom Cell 2').should('be.visible'); + + cy.contains('Custom Header 1').should('be.visible'); + cy.contains('Custom Header 2').should('be.visible'); + cy.contains('pop-in content').should('exist'); + cy.contains('C').should('exist'); + cy.findAllByTestId('popinCell').should('exist'); + cy.findAllByText('PopinDisplay Modes:').as('popinHeader').should('be.exist'); + //popinDisplay: Block + cy.get('@popinHeader').parent().should('have.css', 'flex-direction', 'column'); + }); + it(`pop-in columns (${dir}) - 600 x 1024`, { viewportWidth: 600, viewportHeight: 1024 }, () => { + cy.mount(); + cy.contains('Age').should('not.exist'); + cy.contains('40').should('not.exist'); + + cy.mount( + { + return ( + + Popin Cell + + ); + }, + }, + ]} + dir={dir} + />, + ); + cy.findAllByText('PopinDisplay Modes:').as('popinHeader').should('be.exist'); + //popinDisplay: Row + cy.get('@popinHeader').parent().should('have.css', 'flex-direction', 'row'); + cy.findAllByTestId('popinCell').should('exist'); + + cy.mount( + { + return ( + + Popin Cell + + ); + }, + }, + ]} + dir={dir} + />, + ); + //popinDisplay: WithoutHeader + cy.findAllByText('PopinDisplay Modes:').should('not.exist'); + cy.findAllByTestId('popinCell').should('exist'); + }); + }); + } it('pop-in columns: adjustTableHeightOnPopIn ', () => { document.body.style.margin = '0px'; diff --git a/packages/main/src/components/AnalyticalTable/index.tsx b/packages/main/src/components/AnalyticalTable/index.tsx index 5345e434964..7e37e2ecc01 100644 --- a/packages/main/src/components/AnalyticalTable/index.tsx +++ b/packages/main/src/components/AnalyticalTable/index.tsx @@ -877,7 +877,7 @@ const AnalyticalTable = forwardRef )} - {(additionalEmptyRowsCount || tableState.isScrollable === undefined || tableState.isScrollable) && ( + {(additionalEmptyRowsCount || tableState.isScrollable) && (