forked from nodejs/undici
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(fetch): add
Request{Init}.duplex
and add WPTs (nodejs#1681)
* feat(fetch): add `Request.duplex` and add WPTs * feat: add remaining applicable tests
- Loading branch information
1 parent
2681138
commit 0e6a52d
Showing
18 changed files
with
936 additions
and
64 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,19 @@ | ||
{ | ||
"fail": [ | ||
"Stream errors once aborted. Underlying connection closed.", | ||
"Underlying connection is closed when aborting after receiving response - no-cors", | ||
"Already aborted signal rejects immediately" | ||
] | ||
"request-init-stream.any.js": { | ||
"fail": [ | ||
"It is error to omit .duplex when the body is a ReadableStream." | ||
] | ||
}, | ||
"general.any.js": { | ||
"fail": [ | ||
"Stream errors once aborted. Underlying connection closed.", | ||
"Underlying connection is closed when aborting after receiving response - no-cors", | ||
"Already aborted signal rejects immediately" | ||
] | ||
}, | ||
"request-disturbed.any.js": { | ||
"fail": [ | ||
"Input request used for creating new request became disturbed even if body is not used" | ||
] | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
// META: global=window,worker | ||
|
||
// https://fetch.spec.whatwg.org/#forbidden-method | ||
for (const method of [ | ||
'CONNECT', 'TRACE', 'TRACK', | ||
'connect', 'trace', 'track' | ||
]) { | ||
test(function() { | ||
assert_throws_js(TypeError, | ||
function() { new Request('./', {method: method}); } | ||
); | ||
}, 'Request() with a forbidden method ' + method + ' must throw.'); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
// META: global=window,worker | ||
|
||
// list of bad ports according to | ||
// https://fetch.spec.whatwg.org/#port-blocking | ||
var BLOCKED_PORTS_LIST = [ | ||
1, // tcpmux | ||
7, // echo | ||
9, // discard | ||
11, // systat | ||
13, // daytime | ||
15, // netstat | ||
17, // qotd | ||
19, // chargen | ||
20, // ftp-data | ||
21, // ftp | ||
22, // ssh | ||
23, // telnet | ||
25, // smtp | ||
37, // time | ||
42, // name | ||
43, // nicname | ||
53, // domain | ||
69, // tftp | ||
77, // priv-rjs | ||
79, // finger | ||
87, // ttylink | ||
95, // supdup | ||
101, // hostriame | ||
102, // iso-tsap | ||
103, // gppitnp | ||
104, // acr-nema | ||
109, // pop2 | ||
110, // pop3 | ||
111, // sunrpc | ||
113, // auth | ||
115, // sftp | ||
117, // uucp-path | ||
119, // nntp | ||
123, // ntp | ||
135, // loc-srv / epmap | ||
137, // netbios-ns | ||
139, // netbios-ssn | ||
143, // imap2 | ||
161, // snmp | ||
179, // bgp | ||
389, // ldap | ||
427, // afp (alternate) | ||
465, // smtp (alternate) | ||
512, // print / exec | ||
513, // login | ||
514, // shell | ||
515, // printer | ||
526, // tempo | ||
530, // courier | ||
531, // chat | ||
532, // netnews | ||
540, // uucp | ||
548, // afp | ||
554, // rtsp | ||
556, // remotefs | ||
563, // nntp+ssl | ||
587, // smtp (outgoing) | ||
601, // syslog-conn | ||
636, // ldap+ssl | ||
989, // ftps-data | ||
990, // ftps | ||
993, // ldap+ssl | ||
995, // pop3+ssl | ||
1719, // h323gatestat | ||
1720, // h323hostcall | ||
1723, // pptp | ||
2049, // nfs | ||
3659, // apple-sasl | ||
4045, // lockd | ||
5060, // sip | ||
5061, // sips | ||
6000, // x11 | ||
6566, // sane-port | ||
6665, // irc (alternate) | ||
6666, // irc (alternate) | ||
6667, // irc (default) | ||
6668, // irc (alternate) | ||
6669, // irc (alternate) | ||
6697, // irc+tls | ||
10080, // amanda | ||
]; | ||
|
||
BLOCKED_PORTS_LIST.map(function(a){ | ||
promise_test(function(t){ | ||
return promise_rejects_js(t, TypeError, fetch("http://example.com:" + a)) | ||
}, 'Request on bad port ' + a + ' should throw TypeError.'); | ||
}); |
Oops, something went wrong.