diff options
author | Timothy Gu <timothygu99@gmail.com> | 2017-02-17 07:55:55 +0300 |
---|---|---|
committer | Timothy Gu <timothygu99@gmail.com> | 2017-03-01 05:39:24 +0300 |
commit | 6123ed5b25bfedc3054dbaf9f3039e2585b799f8 (patch) | |
tree | 206eebfaaea7841d71992e738f5535ff990ac3e3 /benchmark/url | |
parent | b610a4db1c2919f88711962f5797f25ecb1cd36b (diff) |
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>
Diffstat (limited to 'benchmark/url')
-rw-r--r-- | benchmark/url/usvstring.js | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/benchmark/url/usvstring.js b/benchmark/url/usvstring.js new file mode 100644 index 00000000000..40a94503738 --- /dev/null +++ b/benchmark/url/usvstring.js @@ -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); +} |