summaryrefslogtreecommitdiff
path: root/cli/tests/unit/http_test.ts
AgeCommit message (Collapse)Author
2022-03-07fix(ext/http): drop content-length header on compression (#13866)Satya Rohith
2022-03-04feat(ext/http): auto-compression of fixed response bodies (#13769)Kitson Kelly
Co-authored-by: Ryan Dahl <ry@tinyclouds.org> Co-authored-by: Satya Rohith <me@satyarohith.com> Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2022-02-16feat(test): improved op sanitizer errors + traces (#13676)Luca Casonato
This commit improves the error messages for the `deno test` async op sanitizer. It does this in two ways: - it uses handwritten error messages for each op that could be leaking - it includes traces showing where each op was started This "async op tracing" functionality is a new feature in deno_core. It likely has a significant performance impact, which is why it is only enabled in tests.
2022-02-16tests: deflake a bunch of net related tests (#13685)Luca Casonato
2022-02-16tests: unflake httpServerIncompleteMessage (#13682)Luca Casonato
2022-02-16feat(ext/http): add support for unix domain sockets (#13628)ylxdzsw
2022-01-20chore: update copyright year (#13434)Yoshiya Hinosawa
2022-01-02chore: update std submodule to efa94f2 (#13260)Bartek Iwańczuk
2021-12-08fix(ext/timers): fix flakiness of `httpConnAutoCloseDelayedOnUpgrade` test ↵Yoshiya Hinosawa
(#13017)
2021-11-23refactor: remove "unitTest" wrapper from cli/tests/unit (#12750)Bartek Iwańczuk
2021-11-17test(ext/http): DELETE requests should always have body (#12798)Bert Belder
Refs: #12741 Refs: #12746
2021-11-10refactor(ext/http): rewrite hyper integration and fix bug (#12732)Bert Belder
Fixes: #12193 Fixes: #12251 Closes: #12714
2021-11-10fix: non ascii buffer response in http server (#12728)Luca Casonato
2021-11-09Revert "refactor(ext/http): rewrite hyper integration and fix bug (#12332)" ↵Luca Casonato
(#12704) This reverts commit 5b1e537446454f6332de44adbeb6a15ff072c2fa.
2021-11-08refactor(ext/http): rewrite hyper integration and fix bug (#12332)Bert Belder
Fixes: #12193
2021-10-26fix(ext/http): allow multiple values in upgrade header for websocket (#12551)Leo K
Co-authored-by: Aaron O'Mullan <aaron.omullan@gmail.com>
2021-10-17fix(core): poll async ops eagerly (#12385)Bert Belder
Currently all async ops are polled lazily, which means that op initialization code is postponed until control is yielded to the event loop. This has some weird consequences, e.g. ```js let listener = Deno.listen(...); let conn_promise = listener.accept(); listener.close(); // `BadResource` is thrown. A reasonable error would be `Interrupted`. let conn = await conn_promise; ``` JavaScript promises are expected to be eagerly evaluated. This patch makes ops actually do that.
2021-10-11fix(http): don't expose body on GET/HEAD requests (#12260)Luca Casonato
GET/HEAD requests can't have bodies according to `fetch` spec. This commit changes the HTTP server to hide request bodies for requests with GET or HEAD methods.
2021-09-30feat(tls): custom in memory CA certificates (#12219)Luca Casonato
This adds support for using in memory CA certificates for `Deno.startTLS`, `Deno.connectTLS` and `Deno.createHttpClient`. `certFile` is deprecated in `startTls` and `connectTls`, and removed from `Deno.createHttpClient`.
2021-09-26fix(ext/http): include port number in h2 urls (#12181)Ben Noordhuis
2021-09-25fix(http): panic when responding to a closed conn (#12216)Aaron O'Mullan
Our oneshot receiver in `HyperService::call` would unwrap and panic, the `.await` on the oneshot receiver happens when the sender is dropped. The sender is dropped in `op_http_response` because: 1. We take `ResponseSenderResource` 2. Then get `ConnResource` and early exit on failure (conn already closed) 3. The taken sender then gets dropped in this early exit before any response is sent over the channel Fallbacking to returning a dummy response to hyper seems to be a fine quickfix
2021-09-23test(cli): align unit test permissions with runtime test permissions (#12189)Casper Beyer
2021-09-13fix: change assertion in httpServerIncompleteMessage test (#12052)Bartek Iwańczuk
2021-09-08fix(ext/http): resource leak if request body is not consumed (#11955)Bartek Iwańczuk
2021-09-05chore(std/http): server module name migration (#11890)Craig Morten
2021-08-25chore(tests): improve unit tests using `deferred` (#11842)David Sherret
2021-08-25fix(ext/http): websocket upgrade header check (#11830)Dayan C. Galiazzi
2021-08-23fix(ext/http): resource leak on HttpConn.close() (#11805)Bartek Iwańczuk
This commit adds tracking of resources that are related to "HttpConn" so they can be closed automatically when closing the connection.
2021-08-16test(ext/http): add test for incomplete HTTP message and fix resource leak ↵Bartek Iwańczuk
(#11717) This commit adds a test case for "Http: connection closed before message completed" error as well as fixing an edge with resource leak when the error is raised.
2021-08-13fix(ext/http): remove unwrap() when HTTP conn errors (#11674)Bartek Iwańczuk
2021-08-11chore: move test files to testdata directory (#11601)David Sherret
2021-08-09fix(websocket): allow any close code for server (#11614)Leo K
2021-08-05refactor(cli/tests): remove unnecessary void return types (#11577)Leo K
2021-07-28BREAKING(unstable): Rename Deno.WebSocketUpgrade::websocket to socket (#11542)Nayeem Rahman
2021-07-24fix(http): support multiple options in connection header for websocket (#11505)Pavel Hrách
Fixes #11494
2021-07-22fix(http/ws): case insensitive connection header (#11489)Luca Casonato
The "connection" header should be case insensitive: https://datatracker.ietf.org/doc/html/rfc7230#section-6.1
2021-07-16fix(ext/http): correctly concat cookie headers (#11422)Luca Casonato
Cookie headers should not be concatenated by commas, rather by semicolons.
2021-07-08feat(runtime/http): server side websocket support (#10359)Leo K
Co-authored-by: Nayeem Rahman <nayeemrmn99@gmail.com> Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-06-28fix(http): remove unwrap() in HTTP bindings (#11130)Bartek Iwańczuk
2021-06-27fix(runtime/http): Encode and decode headers as byte strings in the HTTP ↵Andreu Botella
server (#11144)
2021-06-26fix: specify AbortSignal for native http requests (#11126)Luca Casonato
2021-06-25test(cli): refactor the usages of delay (#11098)Yoshiya Hinosawa
This PR refactors the usages of delay utility in js unit testing. The same utiliy is defined in several places with different names. This PR replaces those usages with the one provided in std/async/delay.ts to improve the readability and consistency of test code.
2021-06-14fix: poll connection after writing response chunk in Deno.serveHttp() (#10961)Bartek Iwańczuk
This commit changes "op_http_response_write" to first send response chunk and then poll the underlying HTTP connection. Previously after writing a chunk of response HTTP connection wasn't polled and thus data wasn't written to the socket until after next op interacting with the connection.
2021-06-14fix: hang in Deno.serveHttp() (#10923)Bartek Iwańczuk
Waiting on next request in Deno.serveHttp() API hanged when responses were using ReadableStream. This was caused by op_http_request_next op that was never woken after response was fully written. This commit adds waker field to DenoService which is called after response is finished.
2021-06-04fix: hang in op_http_next_request (#10836)Bartek Iwańczuk
This commit adds "CancelHandle" to "ConnResource" and changes "op_http_next_request" to await for the cancel signal. In turn when async iterating over "Deno.HttpConn" the iterator breaks upon closing of the resource.
2021-05-21fix(runtime/http): fix empty blob response (#10689)Yoshiya Hinosawa
2021-05-19fix(runtime/http): expose nextRequest() errors in respondWith() (#10384)Nayeem Rahman
2021-04-23fix(runtime/js/http): cancel body on response failure (#10225)Nayeem Rahman
2021-04-19fix(rt/http): correct URL in Request (#10256)Luca Casonato
This commit fixes the URL returned from `request.url` in the HTTP server to be fully qualified. This previously existed, but was removed and accidentially not readded during optimizations of the HTTP ops. Returning a non fully qualified URL from `Request#url` is not spec compliant.
2021-04-15fix(#10182): hang during http server response (#10197)Ryan Dahl