summaryrefslogtreecommitdiff
path: root/test/parallel/test-http-deprecated-urls.js
diff options
context:
space:
mode:
authorHackzzila <admin@hackzzila.com>2018-04-24 19:37:43 -0500
committerRuben Bridgewater <ruben@bridgewater.de>2018-04-29 17:03:16 +0200
commit564048dc2984c45884e5eb58c903f9a0ebe29ab4 (patch)
tree443c28793fbcc2bf4fedd00cbd6e161fb0675270 /test/parallel/test-http-deprecated-urls.js
parent511230fdae1f61594808a8f547c7f3e5e46727ef (diff)
downloadandroid-node-v8-564048dc2984c45884e5eb58c903f9a0ebe29ab4.tar.gz
android-node-v8-564048dc2984c45884e5eb58c903f9a0ebe29ab4.tar.bz2
android-node-v8-564048dc2984c45884e5eb58c903f9a0ebe29ab4.zip
http,https,tls: switch to WHATWG URL parser
This switches the url parser from `url.parse()` to the WHATWG URL parser while keeping `url.parse()` as fallback. Also add tests for invalid url deprecations and correct hostname checks. PR-URL: https://github.com/nodejs/node/pull/20270 Fixes: https://github.com/nodejs/node/issues/19468 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Diffstat (limited to 'test/parallel/test-http-deprecated-urls.js')
-rw-r--r--test/parallel/test-http-deprecated-urls.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/parallel/test-http-deprecated-urls.js b/test/parallel/test-http-deprecated-urls.js
new file mode 100644
index 0000000000..5bb9f66ebe
--- /dev/null
+++ b/test/parallel/test-http-deprecated-urls.js
@@ -0,0 +1,33 @@
+/* eslint-disable node-core/crypto-check */
+
+'use strict';
+
+const common = require('../common');
+
+const http = require('http');
+const modules = { http };
+
+const deprecations = [
+ ['The provided URL http://[www.nodejs.org] is not a valid URL, and is supported ' +
+ 'in the http module solely for compatibility.',
+ 'DEP0109'],
+];
+
+if (common.hasCrypto) {
+ const https = require('https');
+ modules.https = https;
+ deprecations.push(
+ ['The provided URL https://[www.nodejs.org] is not a valid URL, and is supported ' +
+ 'in the https module solely for compatibility.',
+ 'DEP0109'],
+ );
+}
+
+common.expectWarning('DeprecationWarning', deprecations);
+
+Object.keys(modules).forEach((module) => {
+ const doNotCall = common.mustNotCall(
+ `${module}.request should not connect to ${module}://[www.nodejs.org]`
+ );
+ modules[module].request(`${module}://[www.nodejs.org]`, doNotCall).abort();
+});