From ceb720f38427ab0a1e4ccd5e6a0a2d8e40c9416b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20do=20Carmo?= Date: Tue, 24 Jan 2017 00:58:00 -0300 Subject: [PATCH] test: expand test coverage of fs.js * test calling truncateSync() passing a file descriptor * test calling truncate() passing undefined as the 2nd argument Refs: https://coverage.nodejs.org/coverage-8ab561b2432bdae3/root/fs.js.html (line 673 and 692) PR-URL: https://github.com/nodejs/node/pull/10972 Reviewed-By: James M Snell Reviewed-By: Santiago Gimeno Reviewed-By: Colin Ihrig Reviewed-By: Michael Dawson --- test/parallel/test-fs-truncate-sync.js | 20 ++++++++++++++++++++ test/parallel/test-fs-truncate.js | 11 +++++++++++ 2 files changed, 31 insertions(+) create mode 100644 test/parallel/test-fs-truncate-sync.js 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(''))); + })); +}