diff --git a/test/parallel/test-fs-promises-file-handle-dispose.js b/test/parallel/test-fs-promises-file-handle-dispose.js index 3e7ef3066a7c86..91b677fdec3c68 100644 --- a/test/parallel/test-fs-promises-file-handle-dispose.js +++ b/test/parallel/test-fs-promises-file-handle-dispose.js @@ -22,5 +22,26 @@ async function explicitCall() { assert.throws(() => dhSync.readSync(), { code: 'ERR_DIR_CLOSED' }); } +async function implicitCall() { + { + await using fh = await fs.open(__filename); + fh.on('close', common.mustCall()); + } + + let dh; + { + await using dirHandle = await fs.opendir(__dirname); + dh = dirHandle; + } + await assert.rejects(dh.read(), { code: 'ERR_DIR_CLOSED' }); + + let dhSync; + { + using dirHandleSync = opendirSync(__dirname); + dhSync = dirHandleSync; + } + assert.throws(() => dhSync.readSync(), { code: 'ERR_DIR_CLOSED' }); +} + explicitCall().then(common.mustCall()); -// TODO(aduh95): add test for implicit calls, with `await using` syntax. +implicitCall().then(common.mustCall());