platform-helpers/saucelabs-capabilities-lists.js

const lodash = require('lodash');

/**
   * List of SauceLabs capabilities
   *
   * PS: these lists might get obsolute as new browser versions are realeased.
   * New list can get created at SauceLabs capabilities generator page: https://saucelabs.com/platform/platform-configurator
   *
   *  separate export so we can re-override the runner's capability (local chrome) with a shared set of browsers
   *  see https://wiki.saucelabs.com/display/DOCS/Test+Configuration+Options
   *  and https://wiki.saucelabs.com/display/DOCS/Platform+Configurator
   */
class SaucelabsCapabilitiesLists {
  static fullCapabilities = () => lodash.cloneDeep([{
    browserName: 'safari',
    browserVersion: 'latest',
    platformName: 'macOS 11'
  }, {
    browserName: 'safari',
    browserVersion: 'latest',
    platformName: 'macOS 10.15'
  }, {
    browserName: 'safari',
    browserVersion: 'latest',
    platformName: 'macOS 10.14'
  }, {
    browserName: 'chrome',
    browserVersion: 'latest',
    platformName: 'macOS 11'
  }, {
    browserName: 'chrome',
    browserVersion: 'latest-1',
    platformName: 'macOS 11'
  }, {
    browserName: 'chrome',
    browserVersion: 'latest-2',
    platformName: 'macOS 10.15'
  }, {
    browserName: 'MicrosoftEdge',
    browserVersion: 'latest',
    platformName: 'Windows 10'
  }, {
    browserName: 'MicrosoftEdge',
    browserVersion: 'latest-1',
    platformName: 'Windows 10'
  }, {
    browserName: 'MicrosoftEdge',
    browserVersion: 'latest-2',
    platformName: 'Windows 10'
  }, {
    browserName: 'firefox',
    browserVersion: 'latest',
    platformName: 'Windows 10'
  }, {
    browserName: 'firefox',
    browserVersion: 'latest-1',
    platformName: 'Windows 10'
  }, {
    browserName: 'firefox',
    browserVersion: 'latest-2',
    platformName: 'Windows 10'
  }]);

  static latestCapabilities = () => lodash.cloneDeep([{
    browserName: 'chrome',
    browserVersion: 'latest',
    platformName: 'macOS 11'
  }, {
    browserName: 'firefox',
    browserVersion: 'latest',
    platformName: 'Windows 10'
  }, {
    browserName: 'MicrosoftEdge',
    browserVersion: 'latest',
    platformName: 'Windows 10'
  }, {
    browserName: 'safari',
    browserVersion: 'latest',
    platformName: 'macOS 11'
  }]);

  static singleCapability = () => lodash.cloneDeep([{
    browserName: 'chrome',
    browserVersion: 'latest',
    platformName: 'Windows 10'
  }]);
}

module.exports = SaucelabsCapabilitiesLists;