summaryrefslogtreecommitdiff
path: root/benchmark/assert/deepequal-prims-and-objs-big-loop.js
diff options
context:
space:
mode:
Diffstat (limited to 'benchmark/assert/deepequal-prims-and-objs-big-loop.js')
-rw-r--r--benchmark/assert/deepequal-prims-and-objs-big-loop.js27
1 files changed, 24 insertions, 3 deletions
diff --git a/benchmark/assert/deepequal-prims-and-objs-big-loop.js b/benchmark/assert/deepequal-prims-and-objs-big-loop.js
index 781c5ad754..2800b51c49 100644
--- a/benchmark/assert/deepequal-prims-and-objs-big-loop.js
+++ b/benchmark/assert/deepequal-prims-and-objs-big-loop.js
@@ -16,7 +16,12 @@ const primValues = {
const bench = common.createBenchmark(main, {
prim: Object.keys(primValues),
n: [1e6],
- method: ['strict', 'nonstrict']
+ method: [
+ 'deepEqual',
+ 'deepStrictEqual',
+ 'notDeepEqual',
+ 'notDeepStrictEqual'
+ ]
});
function main(conf) {
@@ -24,11 +29,12 @@ function main(conf) {
const n = +conf.n;
const actual = prim;
const expected = prim;
+ const expectedWrong = 'b';
var i;
// Creates new array to avoid loop invariant code motion
switch (conf.method) {
- case 'strict':
+ case 'deepEqual':
bench.start();
for (i = 0; i < n; ++i) {
// eslint-disable-next-line no-restricted-properties
@@ -36,13 +42,28 @@ function main(conf) {
}
bench.end(n);
break;
- case 'nonstrict':
+ 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');
}