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
|
If the file is not modified concurrently, the end-of-file is reached when the
|
||||||
number of bytes read is zero.
|
number of bytes read is zero.
|
||||||
|
|
||||||
#### `filehandle.read(options)`
|
#### `filehandle.read([options])`
|
||||||
<!-- YAML
|
<!-- YAML
|
||||||
added:
|
added:
|
||||||
- v13.11.0
|
- v13.11.0
|
||||||
|
@ -400,6 +400,9 @@ async function open(path, flags, mode) {
|
|||||||
async function read(handle, bufferOrOptions, offset, length, position) {
|
async function read(handle, bufferOrOptions, offset, length, position) {
|
||||||
let buffer = bufferOrOptions;
|
let buffer = bufferOrOptions;
|
||||||
if (!isArrayBufferView(buffer)) {
|
if (!isArrayBufferView(buffer)) {
|
||||||
|
if (bufferOrOptions === undefined) {
|
||||||
|
bufferOrOptions = {};
|
||||||
|
}
|
||||||
if (bufferOrOptions.buffer) {
|
if (bufferOrOptions.buffer) {
|
||||||
buffer = bufferOrOptions.buffer;
|
buffer = bufferOrOptions.buffer;
|
||||||
validateBuffer(buffer);
|
validateBuffer(buffer);
|
||||||
|
@ -61,6 +61,13 @@ async function validateLargeRead(options) {
|
|||||||
assert.strictEqual(readHandle.bytesRead, 0);
|
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() {
|
(async function() {
|
||||||
tmpdir.refresh();
|
tmpdir.refresh();
|
||||||
@ -70,4 +77,5 @@ async function validateLargeRead(options) {
|
|||||||
await validateRead('', 'read-empty-file-conf', { useConf: true });
|
await validateRead('', 'read-empty-file-conf', { useConf: true });
|
||||||
await validateLargeRead({ useConf: false });
|
await validateLargeRead({ useConf: false });
|
||||||
await validateLargeRead({ useConf: true });
|
await validateLargeRead({ useConf: true });
|
||||||
|
await validateReadNoParams();
|
||||||
})().then(common.mustCall());
|
})().then(common.mustCall());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user