| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- context('Access to any page', () => {
- const ssPrefix = 'subnav-';
- beforeEach(() => {
- // login
- cy.fixture("user-admin.json").then(user => {
- cy.login(user.username, user.password);
- });
- cy.visit('/');
- cy.waitUntilSkeletonDisappear();
- cy.collapseSidebar(true, true);
- });
- it('Subnavigation displays changes on scroll down and up', () => {
- cy.waitUntil(() => {
- // do
- // Scroll the window 250px down is enough to trigger sticky effect
- cy.scrollTo(0, 250);
- // wait until
- return cy.get('.sticky-outer-wrapper').should('have.class', 'active');
- });
- cy.waitUntilSkeletonDisappear();
- cy.screenshot(`${ssPrefix}visible-on-scroll-down`);
- cy.waitUntil(() => {
- // do
- // Scroll the window back to top
- cy.scrollTo(0, 0);
- // wait until
- return cy.get('.sticky-outer-wrapper').should('not.have.class', 'active');
- });
- cy.screenshot(`${ssPrefix}invisible-on-scroll-top`);
- });
- it('Subnavigation is not displayed when move to other pages', () => {
- cy.waitUntil(() => {
- // do
- // Scroll the window 250px down is enough to trigger sticky effect
- cy.scrollTo(0, 250);
- // wait until
- return cy.get('.sticky-outer-wrapper').should('have.class', 'active');
- });
- // Move to /Sandbox page
- cy.visit('/Sandbox');
- cy.waitUntilSkeletonDisappear();
- cy.collapseSidebar(true);
- return cy.get('.sticky-outer-wrapper').should('not.have.class', 'active');
- cy.screenshot(`${ssPrefix}not-visible-on-move-to-other-pages`);
- });
- it('Able to click buttons on subnavigation switcher when sticky', () => {
- cy.waitUntil(() => {
- // do
- // Scroll the window 250px down is enough to trigger sticky effect
- cy.scrollTo(0, 250);
- // wait until
- return cy.get('.sticky-outer-wrapper').should('have.class', 'active');
- });
- cy.waitUntil(() => {
- cy.getByTestid('grw-contextual-sub-nav').within(() => {
- cy.getByTestid('editor-button').as('editorButton').should('be.visible');
- cy.get('@editorButton').click();
- });
- return cy.get('.layout-root').then($elem => $elem.hasClass('editing'));
- });
- cy.getByTestid('grw-editor-navbar-bottom').should('be.visible');
- // cy.get('.CodeMirror').should('be.visible');
- cy.screenshot(`${ssPrefix}open-editor-when-sticky`);
- });
- it('Subnavigation is sticky when on small window', () => {
- cy.waitUntil(() => {
- // do
- // Scroll the window 500px down
- cy.scrollTo(0, 500);
- // wait until
- return cy.get('.sticky-outer-wrapper').should('have.class', 'active');
- });
- cy.waitUntilSkeletonDisappear();
- cy.viewport(600, 1024);
- cy.getByTestid('grw-contextual-sub-nav').within(() => {
- cy.get('#grw-page-editor-mode-manager').should('be.visible');
- })
- cy.screenshot(`${ssPrefix}sticky-on-small-window`);
- });
- });
|