diff --git a/test/parallel/test-fs-truncate-sync.js b/test/parallel/test-fs-truncate-sync.js new file mode 100644 index 00000000000000..a7ce2f4d97f3fe --- /dev/null +++ b/test/parallel/test-fs-truncate-sync.js @@ -0,0 +1,20 @@ +'use strict'; +const common = require('../common'); +const assert = require('assert'); +const path = require('path'); +const fs = require('fs'); +const tmp = common.tmpDir; + +common.refreshTmpDir(); + +const filename = path.resolve(tmp, 'truncate-sync-file.txt'); + +fs.writeFileSync(filename, 'hello world', 'utf8'); + +const fd = fs.openSync(filename, 'r+'); + +fs.truncateSync(fd, 5); +assert(fs.readFileSync(fd).equals(Buffer.from('hello'))); + +fs.closeSync(fd); +fs.unlinkSync(filename); diff --git a/test/parallel/test-fs-truncate.js b/test/parallel/test-fs-truncate.js index 80c938b8d43a03..57d706bddbf8f6 100644 --- a/test/parallel/test-fs-truncate.js +++ b/test/parallel/test-fs-truncate.js @@ -146,3 +146,14 @@ function testFtruncate(cb) { assert(fs.readFileSync(file4).equals(Buffer.from('Hi\u0000\u0000'))); })); } + +{ + const file5 = path.resolve(tmp, 'truncate-file-5.txt'); + fs.writeFileSync(file5, 'Hi'); + const fd = fs.openSync(file5, 'r+'); + process.on('exit', () => fs.closeSync(fd)); + fs.ftruncate(fd, undefined, common.mustCall(function(err) { + assert.ifError(err); + assert(fs.readFileSync(file5).equals(Buffer.from(''))); + })); +}