From 7ee95045dd9ed5968792aec9c12b6b0054368dc6 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Thu, 9 Feb 2017 23:42:14 +0800 Subject: benchmark: clean up legacy url benchmarks PR-URL: https://github.com/nodejs/node/pull/11264 Reviewed-By: James M Snell Reviewed-By: Joyee Cheung Reviewed-By: Brian White --- benchmark/url/url-format.js | 11 ++++++----- benchmark/url/url-parse.js | 37 ------------------------------------- benchmark/url/url-resolve.js | 40 ++++++++++++++++------------------------ 3 files changed, 22 insertions(+), 66 deletions(-) delete mode 100644 benchmark/url/url-parse.js (limited to 'benchmark/url') diff --git a/benchmark/url/url-format.js b/benchmark/url/url-format.js index 3f7df8a0bc4..886958406b9 100644 --- a/benchmark/url/url-format.js +++ b/benchmark/url/url-format.js @@ -3,8 +3,13 @@ const common = require('../common.js'); const url = require('url'); const v8 = require('v8'); +const inputs = { + slashes: {slashes: true, host: 'localhost'}, + file: {protocol: 'file:', pathname: '/foo'}, +}; + const bench = common.createBenchmark(main, { - type: 'one two'.split(' '), + type: Object.keys(inputs), n: [25e6] }); @@ -12,10 +17,6 @@ function main(conf) { const type = conf.type; const n = conf.n | 0; - const inputs = { - one: {slashes: true, host: 'localhost'}, - two: {protocol: 'file:', pathname: '/foo'}, - }; const input = inputs[type] || ''; // Force-optimize url.format() so that the benchmark doesn't get diff --git a/benchmark/url/url-parse.js b/benchmark/url/url-parse.js deleted file mode 100644 index 89679548b8f..00000000000 --- a/benchmark/url/url-parse.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; -var common = require('../common.js'); -var url = require('url'); -var v8 = require('v8'); - -var bench = common.createBenchmark(main, { - type: 'one two three four five six'.split(' '), - n: [25e4] -}); - -function main(conf) { - var type = conf.type; - var n = conf.n | 0; - - var inputs = { - one: 'http://nodejs.org/docs/latest/api/url.html#url_url_format_urlobj', - two: 'http://blog.nodejs.org/', - three: 'https://encrypted.google.com/search?q=url&q=site:npmjs.org&hl=en', - four: 'javascript:alert("node is awesome");', - five: 'some.ran/dom/url.thing?oh=yes#whoo', - six: 'https://user:pass@example.com/', - }; - var input = inputs[type] || ''; - - // Force-optimize url.parse() so that the benchmark doesn't get - // disrupted by the optimizer kicking in halfway through. - for (var name in inputs) - url.parse(inputs[name]); - - v8.setFlagsFromString('--allow_natives_syntax'); - eval('%OptimizeFunctionOnNextCall(url.parse)'); - - bench.start(); - for (var i = 0; i < n; i += 1) - url.parse(input); - bench.end(n); -} diff --git a/benchmark/url/url-resolve.js b/benchmark/url/url-resolve.js index 8372132e4d2..4335511ca6d 100644 --- a/benchmark/url/url-resolve.js +++ b/benchmark/url/url-resolve.js @@ -1,36 +1,28 @@ 'use strict'; -var common = require('../common.js'); -var url = require('url'); -var v8 = require('v8'); +const common = require('../common.js'); +const url = require('url'); +const v8 = require('v8'); +const hrefs = require('../fixtures/url-inputs.js').urls; +hrefs.noscheme = 'some.ran/dom/url.thing?oh=yes#whoo'; -var hrefs = [ - 'http://example.com/', - 'http://nodejs.org/docs/latest/api/url.html#url_url_format_urlobj', - 'http://blog.nodejs.org/', - 'https://encrypted.google.com/search?q=url&q=site:npmjs.org&hl=en', - 'javascript:alert("node is awesome");', - 'some.ran/dom/url.thing?oh=yes#whoo' -]; +const paths = { + 'up': '../../../../../etc/passwd', + 'sibling': '../foo/bar?baz=boom', + 'foo/bar': 'foo/bar', + 'withscheme': 'http://nodejs.org', + 'down': './foo/bar?baz' +}; - -var paths = [ - '../../../../../etc/passwd', - '../foo/bar?baz=boom', - 'foo/bar', - 'http://nodejs.org', - './foo/bar?baz' -]; - -var bench = common.createBenchmark(main, { +const bench = common.createBenchmark(main, { href: Object.keys(hrefs), path: Object.keys(paths), n: [1e5] }); function main(conf) { - var n = conf.n | 0; - var href = hrefs[conf.href]; - var path = paths[conf.path]; + const n = conf.n | 0; + const href = hrefs[conf.href]; + const path = paths[conf.path]; // Force-optimize url.resolve() so that the benchmark doesn't get // disrupted by the optimizer kicking in halfway through. -- cgit v1.2.3