diff options
Diffstat (limited to 'test/jest/mock-scope.test.js')
-rw-r--r-- | test/jest/mock-scope.test.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test/jest/mock-scope.test.js b/test/jest/mock-scope.test.js new file mode 100644 index 0000000..cab77f6 --- /dev/null +++ b/test/jest/mock-scope.test.js @@ -0,0 +1,32 @@ +const { MockAgent, setGlobalDispatcher, request } = require('../../index') + +/* global afterAll, expect, it, AbortController */ + +const runIf = (condition) => condition ? it : it.skip + +const nodeMajor = Number(process.versions.node.split('.', 1)[0]) +const mockAgent = new MockAgent() + +afterAll(async () => { + await mockAgent.close() +}) + +runIf(nodeMajor >= 16)('Jest works with MockScope.delay - issue #1327', async () => { + mockAgent.disableNetConnect() + setGlobalDispatcher(mockAgent) + + const mockPool = mockAgent.get('http://localhost:3333') + + mockPool.intercept({ + path: '/jest-bugs', + method: 'GET' + }).reply(200, 'Hello').delay(100) + + const ac = new AbortController() + setTimeout(() => ac.abort(), 5) + const promise = request('http://localhost:3333/jest-bugs', { + signal: ac.signal + }) + + await expect(promise).rejects.toThrowError('Request aborted') +}, 1000) |