diff options
author | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2017-08-31 16:13:29 +0300 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2017-08-31 16:31:31 +0300 |
commit | 432db9af9d17d83b92683d44adca6f145999e0a8 (patch) | |
tree | a6419435c63246a7aad346ebfe85092285040799 | |
parent | bf554e0928146a0fe5733a126d78daca55dd6b5b (diff) | |
download | qtlocation-mapboxgl-upstream/shuffle-quest.tar.gz |
mapbox-gl-js-shuffle-seedupstream/shuffle-quest
m--------- | mapbox-gl-js | 0 | ||||
-rw-r--r-- | platform/node/test/render.test.js | 28 |
2 files changed, 27 insertions, 1 deletions
diff --git a/mapbox-gl-js b/mapbox-gl-js -Subproject c48a56be0405453b1f1d7437da82a8af8f201c1 +Subproject 98f4ae1c705bca281831b761ceac9c9caeb3274 diff --git a/platform/node/test/render.test.js b/platform/node/test/render.test.js index ce549c1e27..635768f37f 100644 --- a/platform/node/test/render.test.js +++ b/platform/node/test/render.test.js @@ -7,6 +7,19 @@ const ignores = require('./ignores.json'); let tests; let shuffle = false; let recycleMap = false; +let seed; + +// https://stackoverflow.com/a/1349426/229714 +function makeHash() { + const array = []; + const possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + + for (let i = 0; i < 10; ++i) + array.push(possible.charAt(Math.floor(Math.random() * possible.length))); + + // join array elements without commas. + return array.join(''); +} function checkParameter(param) { const index = tests.indexOf(param); @@ -16,10 +29,23 @@ function checkParameter(param) { return true; } +function checkValueParameter(defaultValue, param) { + const index = tests.findIndex((elem) => { return String(elem).startsWith(param); }); + if (index === -1) + return defaultValue; + + const split = String(tests.splice(index, 1)).split('='); + if (split.length !== 2) + return defaultValue; + + return split[1]; +} + if (process.argv[1] === __filename && process.argv.length > 2) { tests = process.argv.slice(2).filter((value, index, self) => { return self.indexOf(value) === index; }); shuffle = checkParameter('--shuffle'); + seed = checkValueParameter(makeHash(), '--seed'); recycleMap = checkParameter('--recycle-map'); } -suite.run('native', {tests, ignores, shuffle, recycleMap}, suiteImplementation); +suite.run('native', {tests, ignores, shuffle, seed, recycleMap}, suiteImplementation); |