Files
lifen-autotest/node_modules/gherkin/lib/gherkin/token_formatter_builder.js

37 lines
815 B
JavaScript

module.exports = function TokenFormatterBuilder() {
var tokensText = '';
this.reset = function () {
tokensText = '';
};
this.startRule = function(ruleType) {};
this.endRule = function(ruleType) {};
this.build = function(token) {
tokensText += formatToken(token) + '\n';
};
this.getResult = function() {
return tokensText;
}
function formatToken(token) {
if(token.isEof) return 'EOF';
return "(" +
token.location.line +
":" +
token.location.column +
")" +
token.matchedType +
":" +
(typeof token.matchedKeyword === 'string' ? token.matchedKeyword : '') +
"/" +
(typeof token.matchedText === 'string' ? token.matchedText : '') +
"/" +
token.matchedItems.map(function (i) { return i.column + ':' + i.text; }).join(',');
}
};