Browse Source

fs.writeFile accepts Buffers

v0.7.4-release
Aaron Heckmann 15 years ago
committed by Ryan Dahl
parent
commit
1d088fb906
  1. 2
      lib/fs.js
  2. 25
      test/simple/test-fs-write-file.js

2
lib/fs.js

@ -384,7 +384,7 @@ fs.writeFile = function (path, data, encoding_, callback) {
if (openErr) {
if (callback) callback(openErr);
} else {
var buffer = new Buffer(data, encoding);
var buffer = data instanceof Buffer ? data : new Buffer(data, encoding);
writeAll(fd, buffer, callback);
}
});

25
test/simple/test-fs-write-file.js

@ -26,9 +26,30 @@ fs.writeFile(filename, s, function (e) {
});
});
// test that writeFile accepts buffers
filename2 = join(fixturesDir, 'test2.txt');
buf = new Buffer(s, 'utf8');
error('writing to ' + filename2);
fs.writeFile(filename2, s, function (e) {
if (e) throw e;
ncallbacks++;
error('file2 written');
fs.readFile(filename2, function (e, buffer) {
if (e) throw e;
error('file2 read');
ncallbacks++;
assert.equal(buf.length, buffer.length);
});
});
process.addListener('exit', function () {
error('done');
assert.equal(4, ncallbacks);
assert.equal(2, ncallbacks);
});
fs.unlinkSync(filename);
fs.unlinkSync(filename2);
});

Loading…
Cancel
Save