1'use strict';
2
3const common = require('../common');
4const assert = require('assert');
5const http = require('http');
6
7const server = http.createServer(common.mustCall(function(req, res) {
8  req.once('data', common.mustCall(() => {
9    req.pause();
10    res.writeHead(200);
11    res.end();
12    res.on('finish', common.mustCall(() => {
13      assert(!req._dumped);
14    }));
15  }));
16}));
17server.listen(0);
18
19server.on('listening', common.mustCall(function() {
20  const req = http.request({
21    port: this.address().port,
22    method: 'POST',
23    path: '/'
24  }, common.mustCall(function(res) {
25    assert.strictEqual(res.statusCode, 200);
26    res.resume();
27    res.on('end', common.mustCall(() => {
28      server.close();
29    }));
30  }));
31
32  req.end(Buffer.allocUnsafe(1024));
33}));
34