summaryrefslogtreecommitdiffstats
path: root/test/fetch/issue-2009.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/fetch/issue-2009.js')
-rw-r--r--test/fetch/issue-2009.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/test/fetch/issue-2009.js b/test/fetch/issue-2009.js
new file mode 100644
index 0000000..0b7b3e9
--- /dev/null
+++ b/test/fetch/issue-2009.js
@@ -0,0 +1,28 @@
+'use strict'
+
+const { test } = require('tap')
+const { fetch } = require('../..')
+const { createServer } = require('http')
+const { once } = require('events')
+
+test('issue 2009', async (t) => {
+ const server = createServer((req, res) => {
+ res.setHeader('a', 'b')
+ res.flushHeaders()
+
+ res.socket.end()
+ }).listen(0)
+
+ t.teardown(server.close.bind(server))
+ await once(server, 'listening')
+
+ for (let i = 0; i < 10; i++) {
+ await t.resolves(
+ fetch(`http://localhost:${server.address().port}`).then(
+ async (resp) => {
+ await resp.body.cancel('Some message')
+ }
+ )
+ )
+ }
+})