[Issue249] Support for ArrayBuffer in Filer.Buffer
1. Added proxy Buffer constructor for Filer.Buffer. 2. Added tests for new Filer.Buffer.
This commit is contained in:
parent
4b01276c28
commit
af1943b5c9
|
@ -0,0 +1,18 @@
|
||||||
|
function FilerBuffer (subject, encoding, nonZero) {
|
||||||
|
|
||||||
|
// Automatically turn ArrayBuffer into Uint8Array so that underlying
|
||||||
|
// Buffer code doesn't just throw away and ignore ArrayBuffer data.
|
||||||
|
if (subject instanceof ArrayBuffer) {
|
||||||
|
subject = new Uint8Array(subject);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new Buffer(subject, encoding, nonZero);
|
||||||
|
};
|
||||||
|
|
||||||
|
Object.keys(Buffer).forEach(function (p) {
|
||||||
|
if (Buffer.hasOwnProperty(p)) {
|
||||||
|
FilerBuffer[p] = Buffer[p];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports = FilerBuffer;
|
|
@ -0,0 +1,14 @@
|
||||||
|
var Filer = require('../..');
|
||||||
|
var util = require('../lib/test-utils.js');
|
||||||
|
var expect = require('chai').expect;
|
||||||
|
|
||||||
|
describe('Filer.Buffer should accept initialized ArrayBuffers, issue 249', function() {
|
||||||
|
beforeEach(util.setup);
|
||||||
|
afterEach(util.cleanup);
|
||||||
|
|
||||||
|
it('should accept an ArrayBuffer with a specified size', function(done) {
|
||||||
|
var buffer = new Filer.Buffer(new ArrayBuffer(5));
|
||||||
|
expect(buffer.length).to.equal(5);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
});
|
|
@ -68,5 +68,6 @@ require("./spec/node-js/simple/test-fs-watch-recursive");
|
||||||
require("./bugs/issue105");
|
require("./bugs/issue105");
|
||||||
require("./bugs/issue106");
|
require("./bugs/issue106");
|
||||||
require("./bugs/issue239");
|
require("./bugs/issue239");
|
||||||
|
require("./bugs/issue249");
|
||||||
require("./bugs/ls-depth-bug");
|
require("./bugs/ls-depth-bug");
|
||||||
require("./bugs/issue247.js");
|
require("./bugs/issue247.js");
|
||||||
|
|
Loading…
Reference in New Issue