You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.4 KiB
43 lines
1.4 KiB
#!/usr/bin/env mocha -R spec |
|
|
|
var assert = require("assert"); |
|
var Bufferish = require("../lib/bufferish"); |
|
var msgpackJS = "../index"; |
|
var isBrowser = ("undefined" !== typeof window); |
|
var msgpack = isBrowser && window.msgpack || require(msgpackJS); |
|
var TITLE = __filename.replace(/^.*\//, ""); |
|
|
|
var HAS_UINT8ARRAY = ("undefined" !== typeof Uint8Array); |
|
|
|
describe(TITLE, function() { |
|
it("{}", function() { |
|
var encoded = msgpack.encode(1); |
|
assert.ok(Buffer.isBuffer(encoded)); |
|
// assert.ok(!ArrayBuffer.isView(encoded)); |
|
}); |
|
|
|
var it_Uint8Array = HAS_UINT8ARRAY ? it : it.skip; |
|
var codecopt = {uint8array: true}; |
|
|
|
it_Uint8Array(JSON.stringify(codecopt), function() { |
|
var codec = msgpack.createCodec(codecopt); |
|
assert.ok(codec); |
|
var options = {codec: codec}; |
|
|
|
// small data |
|
var encoded = msgpack.encode(1, options); |
|
if (ArrayBuffer.isView) assert.ok(ArrayBuffer.isView(encoded)); |
|
assert.ok(Bufferish.isView(encoded)); |
|
assert.ok(!Buffer.isBuffer(encoded)); |
|
|
|
// bigger data |
|
var big = new Buffer(8192); // 8KB |
|
big[big.length - 1] = 99; |
|
var source = [big, big, big, big, big, big, big, big]; // 64KB |
|
encoded = msgpack.encode(source, options); |
|
if (ArrayBuffer.isView) assert.ok(ArrayBuffer.isView(encoded)); |
|
assert.ok(Bufferish.isView(encoded)); |
|
assert.ok(!Buffer.isBuffer(encoded)); |
|
assert.equal(encoded[encoded.length - 1], 99); // last byte |
|
}); |
|
});
|
|
|