diff options
author | Joyee Cheung <joyeec9h3@gmail.com> | 2017-02-01 07:28:59 +0800 |
---|---|---|
committer | Joyee Cheung <joyeec9h3@gmail.com> | 2017-02-06 11:25:21 +0800 |
commit | 5e4545e18f707e9ab28a50bd30f29b06320c8234 (patch) | |
tree | 035d34e7f60d30291c6ef4a018ac133113f73109 /benchmark/assert/deepequal-prims-and-objs-big-array.js | |
parent | 6c7fbd746605d1ea48b2c68555ac802c1e3658d5 (diff) | |
download | android-node-v8-5e4545e18f707e9ab28a50bd30f29b06320c8234.tar.gz android-node-v8-5e4545e18f707e9ab28a50bd30f29b06320c8234.tar.bz2 android-node-v8-5e4545e18f707e9ab28a50bd30f29b06320c8234.zip |
benchmark: add assert.deep[Strict]Equal benchmarks
* Move numbers into configuration
* Add buffer comparison benchmark
* Add assert.deepStrictEqual benchmarks
PR-URL: https://github.com/nodejs/node/pull/11092
Reviewed-By: James M Snell <jasnell@gmail.com>
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); } |