summaryrefslogtreecommitdiff
path: root/test/parallel/test-http2-write-empty-string.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/parallel/test-http2-write-empty-string.js')
-rw-r--r--test/parallel/test-http2-write-empty-string.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/test/parallel/test-http2-write-empty-string.js b/test/parallel/test-http2-write-empty-string.js
new file mode 100644
index 0000000000..74675fd67d
--- /dev/null
+++ b/test/parallel/test-http2-write-empty-string.js
@@ -0,0 +1,40 @@
+// Flags: --expose-http2
+'use strict';
+
+const common = require('../common');
+const assert = require('assert');
+const http2 = require('http2');
+
+const server = http2.createServer(function(request, response) {
+ response.writeHead(200, {'Content-Type': 'text/plain'});
+ response.write('1\n');
+ response.write('');
+ response.write('2\n');
+ response.write('');
+ response.end('3\n');
+
+ this.close();
+});
+
+server.listen(0, common.mustCall(function() {
+ const client = http2.connect(`http://localhost:${this.address().port}`);
+ const headers = { ':path': '/' };
+ const req = client.request(headers).setEncoding('ascii');
+
+ let res = '';
+
+ req.on('response', common.mustCall(function(headers) {
+ assert.strictEqual(200, headers[':status']);
+ }));
+
+ req.on('data', (chunk) => {
+ res += chunk;
+ });
+
+ req.on('end', common.mustCall(function() {
+ assert.strictEqual('1\n2\n3\n', res);
+ client.destroy();
+ }));
+
+ req.end();
+}));