UNPKG

@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
"use strict"; 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; }