UNPKG

jest-cucumber

Version:
44 lines 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.loadScenarioResult = exports.saveScenarioResult = void 0; var fs_1 = require("fs"); var os = require("os"); var path = require("path"); var crypto_1 = require("crypto"); var getHash = function (data) { return crypto_1.createHash('sha1').update(data).digest('hex'); }; var getFilePath = function (featureTitle, scenarioTitle) { return path.join(os.tmpdir(), 'jest-cucumber-reporting', getHash(featureTitle + "_" + scenarioTitle)); }; exports.saveScenarioResult = function (scenarioResult) { var filePath = getFilePath(scenarioResult.featureTitle, scenarioResult.scenarioTitle); if (!fs_1.existsSync(path.dirname(filePath))) { fs_1.mkdirSync(path.dirname(filePath)); } return new Promise(function (resolve, reject) { fs_1.writeFile(filePath, JSON.stringify(scenarioResult), { encoding: 'utf8', flag: 'w' }, function (error) { if (error) { reject(error); } else { resolve(); } }); }); }; exports.loadScenarioResult = function (featureTitle, scenarioTitle) { var filePath = getFilePath(featureTitle, scenarioTitle); return new Promise(function (resolve, reject) { fs_1.readFile(filePath, 'utf8', function (error, data) { if (error) { reject(error); } else { resolve(data); } }); }) .then(function (scenarioResult) { return JSON.parse(scenarioResult); }); }; //# sourceMappingURL=ScenarioResultFileOperations.js.map