UNPKG

jest-cucumber

Version:
49 lines 2.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FeatureFileEventGenerator = void 0; var fs_1 = require("fs"); var uuid_1 = require("uuid"); var generateMessages_1 = require("gherkin/dist/src/stream/generateMessages"); var FeatureFileEventGenerator = /** @class */ (function () { function FeatureFileEventGenerator(eventBroadcaster) { this.eventBroadcaster = eventBroadcaster; this.processedFeatureFiles = {}; } FeatureFileEventGenerator.prototype.generateEventsFromFeatureFile = function (featureFilePath) { var _this = this; return new Promise(function (resolve, reject) { if (_this.processedFeatureFiles[featureFilePath]) { return resolve(_this.processedFeatureFiles[featureFilePath]); } else { fs_1.readFile(featureFilePath, 'utf8', function (error, data) { if (error) { reject(error); } else { _this.processedFeatureFiles[featureFilePath] = data; resolve(data); } }); } }) .then(function (featureText) { var envelopes = generateMessages_1.default(featureText, featureFilePath, { newId: uuid_1.v4, includePickles: true }); envelopes.forEach(function (envelope) { if (envelope.message === 'pickle') { _this.eventBroadcaster.emit('pickle-accepted', { type: 'pickle-accepted', pickle: envelope.pickle, uri: envelope.source, }); } }); }); }; return FeatureFileEventGenerator; }()); exports.FeatureFileEventGenerator = FeatureFileEventGenerator; //# sourceMappingURL=FeatureFileEventGenerator.js.map