backstopjs-ci
Version:
A commandline utility and node server to assist in creating drupal backstop tests
34 lines (30 loc) • 1.1 kB
JavaScript
// Stash dev URL, removing any trailing slash
//const devURL = process.env.DEV_SITE_URL.replace(/\/$/, "");
const _ = require('lodash');
const config = require('./config.js');
const request = require('request');
const args = require('yargs').argv;
const backstop = require('backstopjs');
let myArgs = process.argv.slice(2);
let commandToRun = myArgs[0];
let referenceUrl = config.referenceUrl;
let testUrl = config.testUrl;
let backstopConfig = config.backstopConfig;
if (args.testUrl) {
testUrl = args.testUrl.replace(/\/$/, "");
}
if (args.referenceUrl) {
referenceUrl = args.referenceUrl.replace(/\/$/, "");
}
for (let [key, value] of Object.entries(config.pathsToTest)) {
backstopConfig.scenarios.push({
...{label: key, url: testUrl + value, referenceUrl: referenceUrl + value },
...config.defaultScenarioSettings
});
}
for (let [key, value] of Object.entries(config.customScenarios)) {
value.url = testUrl + value.url;
value.referenceUrl = referenceUrl + value.referenceUrl;
backstopConfig.scenarios.push(value);
}
backstop(commandToRun, { config: backstopConfig });