diff options
Diffstat (limited to 'benchmark/assert/deepequal-prims-and-objs-big-array.js')
-rw-r--r-- | benchmark/assert/deepequal-prims-and-objs-big-array.js | 52 |
1 files changed, 33 insertions, 19 deletions
diff --git a/benchmark/assert/deepequal-prims-and-objs-big-array.js b/benchmark/assert/deepequal-prims-and-objs-big-array.js index 1b4802c8ff..69eda8af08 100644 --- a/benchmark/assert/deepequal-prims-and-objs-big-array.js +++ b/benchmark/assert/deepequal-prims-and-objs-big-array.js @@ -1,6 +1,6 @@ 'use strict'; -var common = require('../common.js'); -var assert = require('assert'); +const common = require('../common.js'); +const assert = require('assert'); const primValues = { 'null': null, @@ -13,29 +13,43 @@ const primValues = { 'new-array': new Array([1, 2, 3]) }; -var bench = common.createBenchmark(main, { +const bench = common.createBenchmark(main, { prim: Object.keys(primValues), - n: [25] + n: [25], + len: [1e5], + method: ['strict', 'nonstrict'] }); function main(conf) { - var prim = primValues[conf.prim]; - var n = +conf.n; - var primArray; - var primArrayCompare; - var x; + const prim = primValues[conf.prim]; + const n = +conf.n; + const len = +conf.len; + const actual = []; + const expected = []; + var i; - primArray = new Array(); - primArrayCompare = new Array(); - for (x = 0; x < (1e5); x++) { - primArray.push(prim); - primArrayCompare.push(prim); + for (var x = 0; x < len; x++) { + actual.push(prim); + expected.push(prim); } - bench.start(); - for (x = 0; x < n; x++) { - // eslint-disable-next-line no-restricted-properties - assert.deepEqual(primArray, primArrayCompare); + switch (conf.method) { + case 'strict': + bench.start(); + for (i = 0; i < n; ++i) { + // eslint-disable-next-line no-restricted-properties + assert.deepEqual(actual, expected); + } + bench.end(n); + break; + case 'nonstrict': + bench.start(); + for (i = 0; i < n; ++i) { + assert.deepStrictEqual(actual, expected); + } + bench.end(n); + break; + default: + throw new Error('Unsupported method'); } - bench.end(n); } |