google_tag-8.x-1.x-dev/tests/src/Nightwatch/Tests/commerceEventsTest.js

tests/src/Nightwatch/Tests/commerceEventsTest.js
module.exports = {
  '@tags': ['google_tag'],
  before(browser) {
    browser.drupalInstall({
      setupFile: `${__dirname}/../TestCommerceSiteInstallTestScript.php`,
    });
  },
  after(browser) {
    browser.drupalUninstall();
  },
  'view_item is sent': (browser) => {
    browser
      .drupalRelativeURL('/product/1')
      .assert.googleTagExists()
      .assert.dataLayerContains([
        'event',
        'view_item',
        {
          currency: 'USD',
          items: [
            {
              affiliation: 'FooBar Store',
              item_id: 'ABC123',
              item_name: 'FooBaz Widget - Blue',
            },
          ],
          value: '12.00',
        },
      ])
      .click(
        'select[name="purchased_entity[0][attributes][attribute_color]"] option[value="2"]',
      )
      .assert.dataLayerContains([
        'event',
        'view_item',
        {
          currency: 'USD',
          items: [
            {
              affiliation: 'FooBar Store',
              item_id: 'DEF456',
              item_name: 'FooBaz Widget - Red',
            },
          ],
          value: '12.00',
        },
      ])
      .drupalLogAndEnd({ onlyOnError: false });
  },
  'add_to_cart is sent': (browser) => {
    browser
      .drupalRelativeURL('/product/1')
      .assert.googleTagExists()
      .click('input[value="Add to cart"]')
      .assert.dataLayerContains([
        'event',
        'add_to_cart',
        {
          currency: 'USD',
          items: [
            {
              affiliation: 'FooBar Store',
              discount: '0',
              item_id: 'ABC123',
              item_name: 'FooBaz Widget - Blue',
              price: '12.00',
              quantity: 1,
            },
          ],
          value: '12.00',
        },
      ])
      .drupalLogAndEnd({ onlyOnError: false });
  },
  'checkout events': (browser) => {
    browser
      .drupalRelativeURL('/cart')
      .assert.googleTagExists()
      .click('input[value="Checkout"]')
      .assert.dataLayerContains([
        'event',
        'begin_checkout',
        {
          currency: 'USD',
          items: [
            {
              affiliation: 'FooBar Store',
              discount: '0.00',
              item_id: 'ABC123',
              item_name: 'FooBaz Widget - Blue',
              price: '12.00',
              quantity: 1,
            },
          ],
          value: '12.00',
        },
      ])
      .click('input[value="Continue as Guest"]')
      .setValue('input[name="contact_information[email]"]', 'baz@example.com')
      .setValue(
        'input[name="contact_information[email_confirm]"]',
        'baz@example.com',
      )
      .setValue(
        'input[name="billing_information[profile][address][0][address][given_name]"]',
        'Baz',
      )
      .setValue(
        'input[name="billing_information[profile][address][0][address][family_name]"]',
        'Bar',
      )
      .setValue(
        'input[name="billing_information[profile][address][0][address][address_line1]"]',
        '123 Main St',
      )
      .setValue(
        'input[name="billing_information[profile][address][0][address][locality]"]',
        'Kenosha',
      )
      .setValue(
        'select[name="billing_information[profile][address][0][address][administrative_area]"]',
        'WI',
      )
      .setValue(
        'input[name="billing_information[profile][address][0][address][postal_code]"]',
        '53140',
      )
      .click('input[value="Continue to review"]')
      .click('input[value="Complete checkout"]')
      .assert.dataLayerContains([
        'event',
        'purchase',
        {
          currency: 'USD',
          items: [
            {
              affiliation: 'FooBar Store',
              discount: '0',
              item_id: 'ABC123',
              item_name: 'FooBaz Widget - Blue',
              price: '12.00',
              quantity: 1,
            },
          ],
          shipping: '0',
          tax: '0',
          transaction_id: '1',
          value: '12.00',
        },
      ])
      .drupalLogAndEnd({ onlyOnError: false });
  },
};

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc