summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorRobert Nagy <ronagy@icloud.com>2019-07-14 18:13:08 +0200
committerMichaƫl Zasso <targos@protonmail.com>2019-07-20 11:13:06 +0200
commit06d0abea0d7ef0a83e0171d5846fd7d597bc83fa (patch)
treea519e914855ba1312c9a417861a948ad4854aca5 /test
parentcaee9106acd54832b529ac7f8ce7d9a8da170a4e (diff)
downloadandroid-node-v8-06d0abea0d7ef0a83e0171d5846fd7d597bc83fa.tar.gz
android-node-v8-06d0abea0d7ef0a83e0171d5846fd7d597bc83fa.tar.bz2
android-node-v8-06d0abea0d7ef0a83e0171d5846fd7d597bc83fa.zip
http: add response.writableFinished
response.writableFinished is true if all data has been flushed to the underlying system. PR-URL: https://github.com/nodejs/node/pull/28681 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Diffstat (limited to 'test')
-rw-r--r--test/parallel/test-http-outgoing-writableFinished.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/test/parallel/test-http-outgoing-writableFinished.js b/test/parallel/test-http-outgoing-writableFinished.js
new file mode 100644
index 0000000000..6f84d91e71
--- /dev/null
+++ b/test/parallel/test-http-outgoing-writableFinished.js
@@ -0,0 +1,32 @@
+'use strict';
+const common = require('../common');
+const assert = require('assert');
+const http = require('http');
+
+const server = http.createServer(common.mustCall(function(req, res) {
+ assert.strictEqual(res.writableFinished, false);
+ res
+ .on('finish', common.mustCall(() => {
+ assert.strictEqual(res.writableFinished, true);
+ server.close();
+ }))
+ .end();
+}));
+
+server.listen(0);
+
+server.on('listening', common.mustCall(function() {
+ const clientRequest = http.request({
+ port: server.address().port,
+ method: 'GET',
+ path: '/'
+ });
+
+ assert.strictEqual(clientRequest.writableFinished, false);
+ clientRequest
+ .on('finish', common.mustCall(() => {
+ assert.strictEqual(clientRequest.writableFinished, true);
+ }))
+ .end();
+ assert.strictEqual(clientRequest.writableFinished, false);
+}));