diff options
author | Ruben Bridgewater <ruben@bridgewater.de> | 2018-01-23 13:17:21 +0100 |
---|---|---|
committer | Ruben Bridgewater <ruben@bridgewater.de> | 2018-02-01 10:48:58 +0100 |
commit | cd7b2c434c8e0936e8305d7aa3baab874ad1f0dc (patch) | |
tree | aad116959965cb855ceeedb8980a6ae164119581 /benchmark/assert/deepequal-prims-and-objs-big-loop.js | |
parent | f951c9a9f02e1193e2843497e3cfed1b263c9721 (diff) | |
download | android-node-v8-cd7b2c434c8e0936e8305d7aa3baab874ad1f0dc.tar.gz android-node-v8-cd7b2c434c8e0936e8305d7aa3baab874ad1f0dc.tar.bz2 android-node-v8-cd7b2c434c8e0936e8305d7aa3baab874ad1f0dc.zip |
benchmark: (assert) refactor
PR-URL: https://github.com/nodejs/node/pull/18320
Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'benchmark/assert/deepequal-prims-and-objs-big-loop.js')
-rw-r--r-- | benchmark/assert/deepequal-prims-and-objs-big-loop.js | 45 |
1 files changed, 8 insertions, 37 deletions
diff --git a/benchmark/assert/deepequal-prims-and-objs-big-loop.js b/benchmark/assert/deepequal-prims-and-objs-big-loop.js index 09797dfaf2..ec51201d51 100644 --- a/benchmark/assert/deepequal-prims-and-objs-big-loop.js +++ b/benchmark/assert/deepequal-prims-and-objs-big-loop.js @@ -29,43 +29,14 @@ function main({ n, primitive, method }) { const actual = prim; const expected = prim; const expectedWrong = 'b'; - var i; - // Creates new array to avoid loop invariant code motion - switch (method) { - case '': - // Empty string falls through to next line as default, mostly for tests. - case 'deepEqual': - bench.start(); - for (i = 0; i < n; ++i) { - // eslint-disable-next-line no-restricted-properties - assert.deepEqual([actual], [expected]); - } - bench.end(n); - break; - case 'deepStrictEqual': - bench.start(); - for (i = 0; i < n; ++i) { - assert.deepStrictEqual([actual], [expected]); - } - bench.end(n); - break; - case 'notDeepEqual': - bench.start(); - for (i = 0; i < n; ++i) { - // eslint-disable-next-line no-restricted-properties - assert.notDeepEqual([actual], [expectedWrong]); - } - bench.end(n); - break; - case 'notDeepStrictEqual': - bench.start(); - for (i = 0; i < n; ++i) { - assert.notDeepStrictEqual([actual], [expectedWrong]); - } - bench.end(n); - break; - default: - throw new Error('Unsupported method'); + // eslint-disable-next-line no-restricted-properties + const fn = method !== '' ? assert[method] : assert.deepEqual; + const value2 = method.includes('not') ? expectedWrong : expected; + + bench.start(); + for (var i = 0; i < n; ++i) { + fn([actual], [value2]); } + bench.end(n); } |