Skip to content

Commit 94dcdfb

Browse files
Masashi Hiranotargos
Masashi Hirano
authored andcommitted
test: increase coverage for fs.promises.truncate
To increase test coverage, added tests for fs.promises.truncate and FileHandle.truncate. PR-URL: #20638 Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]> Backport-PR-URL: #21172
1 parent bacb2cb commit 94dcdfb

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
'use strict';
2+
3+
const common = require('../common');
4+
const assert = require('assert');
5+
const path = require('path');
6+
const { open, readFile } = require('fs').promises;
7+
const tmpdir = require('../common/tmpdir');
8+
9+
tmpdir.refresh();
10+
common.crashOnUnhandledRejection();
11+
12+
async function validateTruncate() {
13+
const text = 'Hello world';
14+
const filename = path.resolve(tmpdir.path, 'truncate-file.txt');
15+
const fileHandle = await open(filename, 'w+');
16+
17+
const buffer = Buffer.from(text, 'utf8');
18+
await fileHandle.write(buffer, 0, buffer.length);
19+
20+
assert.deepStrictEqual((await readFile(filename)).toString(), text);
21+
22+
await fileHandle.truncate(5);
23+
assert.deepStrictEqual((await readFile(filename)).toString(), 'Hello');
24+
}
25+
26+
validateTruncate().then(common.mustCall());

test/parallel/test-fs-promises.js

+4
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,15 @@ const {
1717
mkdir,
1818
mkdtemp,
1919
open,
20+
readFile,
2021
readdir,
2122
readlink,
2223
realpath,
2324
rename,
2425
rmdir,
2526
stat,
2627
symlink,
28+
truncate,
2729
unlink,
2830
utimes
2931
} = fsPromises;
@@ -99,6 +101,8 @@ function verifyStatObject(stat) {
99101
const ret2 = await handle.read(Buffer.alloc(buf2Len), 0, buf2Len, 0);
100102
assert.strictEqual(ret2.bytesRead, buf2Len);
101103
assert.deepStrictEqual(ret2.buffer, buf2);
104+
await truncate(dest, 5);
105+
assert.deepStrictEqual((await readFile(dest)).toString(), 'hello');
102106

103107
await chmod(dest, 0o666);
104108
await handle.chmod(0o666);

0 commit comments

Comments
 (0)