UNPKG

cucumber

Version:

The official JavaScript implementation of Cucumber.

42 lines (36 loc) 1.14 kB
function HashDataTable(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;