Convert more benchmark to benny
authorJérôme Benoit <jerome.benoit@sap.com>
Mon, 24 Oct 2022 16:10:13 +0000 (18:10 +0200)
committerJérôme Benoit <jerome.benoit@sap.com>
Mon, 24 Oct 2022 16:10:13 +0000 (18:10 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
promise-handling.js
random.js

index e4e712b2f664e25e736d91d35d3876bb022f969d..002be6d429392264772e61aff6f617bebee0c277 100644 (file)
@@ -1,13 +1,12 @@
-const Benchmark = require('benchmark')
-const { LIST_FORMATTER } = require('./benchmark-utils')
-
-const suite = new Benchmark.Suite()
+const Benchmark = require('benny')
 
 /**
  *
  */
 function promise () {
-  return new Promise()
+  return new Promise(resolve => {
+    resolve()
+  })
 }
 
 /**
@@ -17,21 +16,29 @@ async function asyncFunction () {
   await promise()
 }
 
-suite
-  .add('await promise', async () => {
+Benchmark.suite(
+  'Promise handling',
+  Benchmark.add('await promise', async () => {
     await asyncFunction()
-  })
-  .add('promise', () => {
+  }),
+  Benchmark.add('promise', () => {
     asyncFunction()
+  }),
+  Benchmark.cycle(),
+  Benchmark.complete(),
+  Benchmark.save({
+    file: 'promise-handling',
+    format: 'json',
+    details: true
+  }),
+  Benchmark.save({
+    file: 'promise-handling',
+    format: 'chart.html',
+    details: true
+  }),
+  Benchmark.save({
+    file: 'promise-handling',
+    format: 'table.html',
+    details: true
   })
-  .on('cycle', event => {
-    console.log(event.target.toString())
-  })
-  .on('complete', function () {
-    console.log(
-      'Fastest is ' + LIST_FORMATTER.format(this.filter('fastest').map('name'))
-    )
-    // eslint-disable-next-line n/no-process-exit
-    process.exit()
-  })
-  .run()
+)
index ee5cc617ed12a80050a62cb65a707bd8b2da4899..f4fd9f0bd53f9182f13541be0b3bb17bc7c5e27c 100644 (file)
--- a/random.js
+++ b/random.js
@@ -9,6 +9,9 @@ const maximum = Number.MAX_SAFE_INTEGER
  * @returns
  */
 function getSecureRandomInteger (max = Number.MAX_SAFE_INTEGER, min = 0) {
+  if (max < min || max < 0 || min < 0) {
+    throw new RangeError('Invalid interval')
+  }
   max = Math.floor(max)
   if (min != null && min !== 0) {
     min = Math.ceil(min)
@@ -23,6 +26,9 @@ function getSecureRandomInteger (max = Number.MAX_SAFE_INTEGER, min = 0) {
  * @returns
  */
 function getRandomInteger (max = Number.MAX_SAFE_INTEGER, min = 0) {
+  if (max < min || max < 0 || min < 0) {
+    throw new RangeError('Invalid interval')
+  }
   max = Math.floor(max)
   if (min != null && min !== 0) {
     min = Math.ceil(min)