This repository has been archived on 2022-03-31. You can view files and clone it, but cannot push or open issues or pull requests.
cic-ussd-e2e/src/specParser.js

43 lines
943 B
JavaScript

const readFile = require("fs").readFileSync;
const parseScenario = require("./scenarioBuilder").parseScenario;
const CASE_DELIM = "#";
const SPECIAL_TIMEOUT = "wait";
function parser() {
const rawData = readFile("sample", "utf8");
const lines = rawData.split("\n");
const allScenarios = [];
let scenario = [];
for (var line = 0; line < lines.length; line++) {
const lineData = lines[line].split(" ");
var scenarioPhone;
if (lineData[0] === CASE_DELIM) {
scenarioPhone = lineData[1];
if (line > 0) {
allScenarios.push(scenario);
scenario = [];
}
} else if (lineData[0] === SPECIAL_TIMEOUT) {
scenario.push([
{
input: false,
timeout: true,
duration: lineData[1] * 1000,
},
]);
} else {
scenario.push(parseScenario(scenarioPhone, lines[line]));
}
}
return allScenarios;
}
module.exports = { parser };