test: refactor fs.write() test

PR-URL: https://github.com/nodejs/node/pull/16827
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
This commit is contained in:
Patrick Heneise 2017-11-06 15:52:33 +00:00 committed by Gireesh Punathil
parent 707e71c1cc
commit 8215c671d3

View File

@ -33,40 +33,43 @@ common.refreshTmpDir();
fs.open(fn, 'w', 0o644, common.mustCall(function(err, fd) { fs.open(fn, 'w', 0o644, common.mustCall(function(err, fd) {
assert.ifError(err); assert.ifError(err);
console.log('open done');
fs.write(fd, '', 0, 'utf8', function(err, written) { const done = common.mustCall(function(err, written) {
assert.strictEqual(0, written);
});
fs.write(fd, expected, 0, 'utf8', common.mustCall(function(err, written) {
console.log('write done');
assert.ifError(err); assert.ifError(err);
assert.strictEqual(Buffer.byteLength(expected), written); assert.strictEqual(Buffer.byteLength(expected), written);
fs.closeSync(fd); fs.closeSync(fd);
const found = fs.readFileSync(fn, 'utf8'); const found = fs.readFileSync(fn, 'utf8');
console.log('expected: "%s"', expected);
console.log('found: "%s"', found);
fs.unlinkSync(fn); fs.unlinkSync(fn);
assert.strictEqual(expected, found); assert.strictEqual(expected, found);
})); });
const written = common.mustCall(function(err, written) {
assert.ifError(err);
assert.strictEqual(0, written);
});
fs.write(fd, '', 0, 'utf8', written);
fs.write(fd, expected, 0, 'utf8', done);
})); }));
const args = constants.O_CREAT | constants.O_WRONLY | constants.O_TRUNC;
fs.open(fn2, args, 0o644, common.mustCall((err, fd) => {
assert.ifError(err);
fs.open(fn2, constants.O_CREAT | constants.O_WRONLY | constants.O_TRUNC, 0o644, const done = common.mustCall((err, written) => {
common.mustCall((err, fd) => { assert.ifError(err);
assert.ifError(err); assert.strictEqual(Buffer.byteLength(expected), written);
console.log('open done'); fs.closeSync(fd);
fs.write(fd, '', 0, 'utf8', (err, written) => { const found = fs.readFileSync(fn2, 'utf8');
assert.strictEqual(0, written); fs.unlinkSync(fn2);
}); assert.strictEqual(expected, found);
fs.write(fd, expected, 0, 'utf8', common.mustCall((err, written) => { });
console.log('write done');
assert.ifError(err); const written = common.mustCall(function(err, written) {
assert.strictEqual(Buffer.byteLength(expected), written); assert.ifError(err);
fs.closeSync(fd); assert.strictEqual(0, written);
const found = fs.readFileSync(fn2, 'utf8'); });
console.log('expected: "%s"', expected);
console.log('found: "%s"', found); fs.write(fd, '', 0, 'utf8', written);
fs.unlinkSync(fn2); fs.write(fd, expected, 0, 'utf8', done);
assert.strictEqual(expected, found); }));
}));
}));