mirror of https://github.com/lukechilds/node.git
Browse Source
PR-URL: https://github.com/nodejs/node/pull/11464 Reviewed-By: Steven R Loomis <srloomis@us.ibm.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: James M Snell <jasnell@gmail.com>v7.x
Timothy Gu
8 years ago
committed by
Italo A. Casas
1 changed files with 47 additions and 0 deletions
@ -0,0 +1,47 @@ |
|||
'use strict'; |
|||
const common = require('../common.js'); |
|||
const { domainToASCII, domainToUnicode } = require('url'); |
|||
|
|||
const inputs = { |
|||
empty: { |
|||
ascii: '', |
|||
unicode: '' |
|||
}, |
|||
none: { |
|||
ascii: 'passports', |
|||
unicode: 'passports' |
|||
}, |
|||
some: { |
|||
ascii: 'Paßstraße', |
|||
unicode: 'xn--Pastrae-1vae' |
|||
}, |
|||
all: { |
|||
ascii: '他们不说中文', |
|||
unicode: 'xn--ihqwczyycu19kkg2c' |
|||
}, |
|||
nonstring: { |
|||
ascii: { toString() { return ''; } }, |
|||
unicode: { toString() { return ''; } } |
|||
} |
|||
}; |
|||
|
|||
const bench = common.createBenchmark(main, { |
|||
input: Object.keys(inputs), |
|||
to: ['ascii', 'unicode'], |
|||
n: [5e6] |
|||
}); |
|||
|
|||
function main(conf) { |
|||
const n = conf.n | 0; |
|||
const to = conf.to; |
|||
const input = inputs[conf.input][to]; |
|||
const method = to === 'ascii' ? domainToASCII : domainToUnicode; |
|||
|
|||
common.v8ForceOptimization(method, input); |
|||
|
|||
bench.start(); |
|||
for (var i = 0; i < n; i++) { |
|||
method(input); |
|||
} |
|||
bench.end(n); |
|||
} |
Loading…
Reference in new issue