import * as gtm from '../support/gtm';

describe('Pruchod sekcemi pres navigaci', () => {
   it('Kontrola, ze existuje sekce Typy produktů', () => {
      cy.visit('/');
      cy.get('.c-header-sections > .container').contains('Typy produktů');
   });

   it('Proklik do sekce Typy produktů', () => {
      cy.get('.c-header-sections [href*="typy-produktu"]').click();
      cy.get('.c-breadcrumbs .active').should('contain', 'Typy produktů');
   });

   it('Proklik do prvniho produktu', () => {
      cy.get('.c-section-products .c-productlist-squareitem').contains('Dárkový poukaz 1000 Kč').click();
      cy.get('.c-breadcrumbs .active').contains('Dárkový poukaz 1000 Kč');
   });

   it('Navrat pres navigaci do predchozi sekce', () => {
      cy.get('.c-breadcrumbs li:nth-child(2) > a').click();
      cy.get(' .c-breadcrumbs .active').should('contain', 'Typy produktů');
   });

   it('Zopakovat proklik do produktu s produktem Kolekce', () => {
      cy.get('.c-section-products .c-productlist-squareitem').contains('Kolekce').click();
      cy.get('.c-breadcrumbs .active').should('contain', 'Kolekce');
      // cy.matchImageSnapshot();
   });

   it('Kliknuti na produkt tag, ktery neni stejny jako sekce, ze ktere prijdu', () => {
      cy.get('.c-product-sections [href*="wpj_v90"]').click();
      cy.get('.c-breadcrumbs .active').should('contain', 'Výrobce wpj');
   });

   it('Navigace skrz recommender na homepage', () => {
      cy.visit('/');
      cy.get('.c-editablecontent-recommender').eq(0).scrollIntoView();
      cy.wait(1500);
      gtm.dataLayerContainsEvent('view_item_list');
      gtm.dataLayerEventEcommerceContainsKeyAndValue('view_item_list', 'item_list_name', 'recommender');
      gtm.checkDataLayerEventHasCorrectPositionsForEcommerceItems('view_item_list');
      cy.get('.c-editablecontent-recommender .c-productlist-squareitem').eq(1).find('.product-link').eq(0).then($link => {
         $link.removeAttr('href');
      });
      cy.get('.c-editablecontent-recommender .c-productlist-squareitem').eq(1).find('.product-link').eq(0).click();
      gtm.checkDataLayerEcommerceItemHasCorrectPosition('select_item', 0, 2);
   });
});
