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