@uuv/assistant
Version:
UUV Helper used to improve the life of testers and developers by generating cucumber phrases from the GUI.
31 lines (30 loc) • 1.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildResultingScript = buildResultingScript;
const model_1 = require("../translator/model");
const regexThen = new RegExp(`^${model_1.StepCaseEnum.THEN}`, "g");
const regexWhen = new RegExp(`^${model_1.StepCaseEnum.WHEN}`, "g");
function buildResultingScript(featureName, scenarioName, generatedScriptStep, baseUrl) {
let completeResultingScript = `Feature: ${featureName}\n`;
completeResultingScript = completeResultingScript + ` Scenario: ${scenarioName}\n`;
completeResultingScript = completeResultingScript + ` Given I visit path "${baseUrl}"\n`;
let isThereAlreadyAThen = false;
let isThereAlreadyAWhen = false;
generatedScriptStep.forEach((step) => {
let sanitizedStep = step;
if (isThereAlreadyAThen) {
sanitizedStep = sanitizedStep.replace(regexThen, model_1.StepCaseEnum.AND);
}
else {
isThereAlreadyAThen = step.match(regexThen) != null;
}
if (isThereAlreadyAWhen) {
sanitizedStep = sanitizedStep.replace(regexWhen, model_1.StepCaseEnum.AND);
}
else {
isThereAlreadyAWhen = step.match(regexWhen) != null;
}
completeResultingScript = completeResultingScript + ` ${sanitizedStep}\n`;
});
return completeResultingScript;
}