Skip to content

Commit

Permalink
benchmark: add USVString conversion benchmark
Browse files Browse the repository at this point in the history
PR-URL: #11436
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
  • Loading branch information
TimothyGu committed Mar 1, 2017
1 parent b610a4d commit 6123ed5
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions benchmark/url/usvstring.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
'use strict';
const common = require('../common.js');

const inputs = {
valid: 'adsfadsfadsf',
validsurr: '\uda23\ude23\uda1f\udfaa\ud800\udfff\uda23\ude23\uda1f\udfaa' +
'\ud800\udfff',
someinvalid: 'asasfdfasd\uda23',
allinvalid: '\udc45\uda23 \udf00\udc00 \udfaa\uda12 \udc00\udfaa',
nonstring: { toString() { return 'asdf'; } }
};
const bench = common.createBenchmark(main, {
input: Object.keys(inputs),
n: [5e7]
}, {
flags: ['--expose-internals']
});

function main(conf) {
const { toUSVString } = require('internal/url');
const str = inputs[conf.input];
const n = conf.n | 0;

bench.start();
for (var i = 0; i < n; i++)
toUSVString(str);
bench.end(n);
}

0 comments on commit 6123ed5

Please sign in to comment.