mirror of https://github.com/lukechilds/node.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
705 B
29 lines
705 B
8 years ago
|
'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);
|
||
|
}
|