UNPKG

cucumber

Version:

The official JavaScript implementation of Cucumber.

41 lines (36 loc) 1.15 kB
var HashDataTable = function(rawArray) { var self = { raw: function raw() { var hashKeys = self.getHashKeys(); var hashValueArrays = self.getHashValueArrays(); var hashes = self.createHashesFromKeysAndValueArrays(hashKeys, hashValueArrays); return hashes; }, getHashKeys: function getHashKeys() { return rawArray[0]; }, getHashValueArrays: function getHashValueArrays() { var _rawArray = [].concat(rawArray); _rawArray.shift(); return _rawArray; }, createHashesFromKeysAndValueArrays: function createHashesFromKeysAndValueArrays(keys, valueArrays) { var hashes = []; valueArrays.forEach(function(values) { var hash = self.createHashFromKeysAndValues(keys, values); hashes.push(hash); }); return hashes; }, createHashFromKeysAndValues: function createHashFromKeysAndValues(keys, values) { var hash = {}; var len = keys.length; for (var i = 0; i < len; i++) { hash[keys[i]] = values[i]; } return hash; } }; return self; }; module.exports = HashDataTable;