test_helpers-1.0.0-alpha6/tests/modules/test_helpers_functional/tests/src/Nightwatch/Tests/moduleInstallerTests.js

tests/modules/test_helpers_functional/tests/src/Nightwatch/Tests/moduleInstallerTests.js
const getBeforeAfterFunctions = require('../Lib/getBeforeAfterFunctions');

const testInstallModules = ['options', 'datetime'];
const testInstallModulesDependencies = ['text'];

module.exports = {
  ...getBeforeAfterFunctions(),

  // @covers tests/src/Nightwatch/Commands/thInstallModules.js:thInstallModules
  'Test thInstallModules': (browser) => {
    /* eslint-disable prefer-const */
    let modules = [];
    browser
      .thInstallModules(testInstallModules, true)
      .thLogin('admin')
      .drupalRelativeURL('/admin/modules')
      .waitForElementVisible('body')
      .elements('css selector', '.system-modules input:checked', (result) => {
        result.value.forEach((element) => {
          const elementId = element[Object.keys(element)[0]];
          browser.elementIdAttribute(elementId, 'name', (attributeResult) => {
            const parts = attributeResult.value.match(
              /modules\[([^\]]+)\]\[([^\]]+)\]/,
            );
            modules.push(parts[1]);
          });
        });
      })
      .perform(() => {
        const expectedModules = [
          ...testInstallModules,
          ...testInstallModulesDependencies,
        ];
        browser.assert.ok(
          expectedModules.every((element) => modules.includes(element)),
        );
      });
  },

  'Test thUninstallModules': (browser) => {
    /* eslint-disable prefer-const */
    let modules = [];
    browser
      .thUninstallModules(testInstallModules)
      .thLogin('admin')
      .drupalRelativeURL('/admin/modules')
      .waitForElementVisible('body')
      .elements('css selector', '.system-modules input:checked', (result) => {
        result.value.forEach((element) => {
          const elementId = element[Object.keys(element)[0]];
          browser.elementIdAttribute(elementId, 'name', (attributeResult) => {
            const parts = attributeResult.value.match(
              /modules\[([^\]]+)\]\[([^\]]+)\]/,
            );
            modules.push(parts[1]);
          });
        });
      })
      .perform(() => {
        browser.assert.ok(
          testInstallModules.every((element) => !modules.includes(element)),
          testInstallModulesDependencies.every((element) =>
            modules.includes(element),
          ),
        );
      });
  },
};

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

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