fs: allow no-params fsPromises fileHandle read
allow no-params read for fsPromises fileHandle read PR-URL: https://github.com/nodejs/node/pull/38287 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
This commit is contained in:
parent
7264dbd038
commit
5370220ab2
@ -285,7 +285,7 @@ Reads data from the file and stores that in the given buffer.
|
||||
If the file is not modified concurrently, the end-of-file is reached when the
|
||||
number of bytes read is zero.
|
||||
|
||||
#### `filehandle.read(options)`
|
||||
#### `filehandle.read([options])`
|
||||
<!-- YAML
|
||||
added:
|
||||
- v13.11.0
|
||||
|
@ -400,6 +400,9 @@ async function open(path, flags, mode) {
|
||||
async function read(handle, bufferOrOptions, offset, length, position) {
|
||||
let buffer = bufferOrOptions;
|
||||
if (!isArrayBufferView(buffer)) {
|
||||
if (bufferOrOptions === undefined) {
|
||||
bufferOrOptions = {};
|
||||
}
|
||||
if (bufferOrOptions.buffer) {
|
||||
buffer = bufferOrOptions.buffer;
|
||||
validateBuffer(buffer);
|
||||
|
@ -61,6 +61,13 @@ async function validateLargeRead(options) {
|
||||
assert.strictEqual(readHandle.bytesRead, 0);
|
||||
}
|
||||
|
||||
async function validateReadNoParams() {
|
||||
const filePath = fixtures.path('x.txt');
|
||||
const fileHandle = await open(filePath, 'r');
|
||||
// Should not throw
|
||||
await fileHandle.read();
|
||||
}
|
||||
|
||||
|
||||
(async function() {
|
||||
tmpdir.refresh();
|
||||
@ -70,4 +77,5 @@ async function validateLargeRead(options) {
|
||||
await validateRead('', 'read-empty-file-conf', { useConf: true });
|
||||
await validateLargeRead({ useConf: false });
|
||||
await validateLargeRead({ useConf: true });
|
||||
await validateReadNoParams();
|
||||
})().then(common.mustCall());
|
||||
|
Loading…
x
Reference in New Issue
Block a user