benchmark: add USVString conversion benchmark
PR-URL: https://github.com/nodejs/node/pull/11436 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
parent
b610a4db1c
commit
6123ed5b25
28
benchmark/url/usvstring.js
Normal file
28
benchmark/url/usvstring.js
Normal file
@ -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);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user