full site update
This commit is contained in:
104
node_modules/restructure/test/EncodeStream.js
generated
vendored
Normal file
104
node_modules/restructure/test/EncodeStream.js
generated
vendored
Normal file
@@ -0,0 +1,104 @@
|
||||
import {EncodeStream} from 'restructure';
|
||||
import assert from 'assert';
|
||||
|
||||
describe('EncodeStream', function() {
|
||||
it('should write a buffer', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(3));
|
||||
stream.writeBuffer(new Uint8Array([1,2,3]));
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([1,2,3]));
|
||||
});
|
||||
|
||||
it('should writeUInt16BE', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(2));
|
||||
stream.writeUInt16BE(0xabcd);
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([0xab, 0xcd]));
|
||||
});
|
||||
|
||||
it('should writeUInt16LE', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(2));
|
||||
stream.writeUInt16LE(0xcdab);
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([0xab, 0xcd]));
|
||||
});
|
||||
|
||||
it('should writeUInt24BE', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(3));
|
||||
stream.writeUInt24BE(0xabcdef);
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([0xab, 0xcd, 0xef]));
|
||||
});
|
||||
|
||||
it('should writeUInt24LE', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(3));
|
||||
stream.writeUInt24LE(0xabcdef);
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([0xef, 0xcd, 0xab]));
|
||||
});
|
||||
|
||||
it('should writeInt24BE', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(6));
|
||||
stream.writeInt24BE(-21724);
|
||||
stream.writeInt24BE(0xabcdef);
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([0xff, 0xab, 0x24, 0xab, 0xcd, 0xef]));
|
||||
});
|
||||
|
||||
it('should writeInt24LE', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(6));
|
||||
stream.writeInt24LE(-21724);
|
||||
stream.writeInt24LE(0xabcdef);
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([0x24, 0xab, 0xff, 0xef, 0xcd, 0xab]));
|
||||
});
|
||||
|
||||
it('should fill', function() {
|
||||
const stream = new EncodeStream(new Uint8Array(5));
|
||||
stream.fill(10, 5);
|
||||
assert.deepEqual(stream.buffer, new Uint8Array([10, 10, 10, 10, 10]));
|
||||
});
|
||||
|
||||
describe('writeString', function() {
|
||||
it('should encode ascii by default', function() {
|
||||
const expected = Buffer.from('some text', 'ascii');
|
||||
const stream = new EncodeStream(new Uint8Array(expected.length));
|
||||
stream.writeString('some text');
|
||||
assert.deepEqual(stream.buffer, expected);
|
||||
});
|
||||
|
||||
it('should encode ascii', function() {
|
||||
const expected = Buffer.from('some text', 'ascii');
|
||||
const stream = new EncodeStream(new Uint8Array(expected.length));
|
||||
stream.writeString('some text', 'ascii');
|
||||
assert.deepEqual(stream.buffer, expected);
|
||||
});
|
||||
|
||||
it('should encode utf8', function() {
|
||||
const expected = Buffer.from('unicode! 👍', 'utf8');
|
||||
const stream = new EncodeStream(new Uint8Array(expected.length));
|
||||
stream.writeString('unicode! 👍', 'utf8');
|
||||
assert.deepEqual(stream.buffer, expected);
|
||||
});
|
||||
|
||||
it('should encode utf16le', function() {
|
||||
const expected = Buffer.from('unicode! 👍', 'utf16le');
|
||||
const stream = new EncodeStream(new Uint8Array(expected.length));
|
||||
stream.writeString('unicode! 👍', 'utf16le');
|
||||
assert.deepEqual(stream.buffer, expected);
|
||||
});
|
||||
|
||||
it('should encode ucs2', function() {
|
||||
const expected = Buffer.from('unicode! 👍', 'ucs2');
|
||||
const stream = new EncodeStream(new Uint8Array(expected.length));
|
||||
stream.writeString('unicode! 👍', 'ucs2');
|
||||
assert.deepEqual(stream.buffer, expected);
|
||||
});
|
||||
|
||||
it('should encode utf16be', function() {
|
||||
const expected = Buffer.from('unicode! 👍', 'utf16le');
|
||||
for (let i = 0, end = expected.length - 1; i < end; i += 2) {
|
||||
const byte = expected[i];
|
||||
expected[i] = expected[i + 1];
|
||||
expected[i + 1] = byte;
|
||||
}
|
||||
|
||||
const stream = new EncodeStream(new Uint8Array(expected.length));
|
||||
stream.writeString('unicode! 👍', 'utf16be');
|
||||
assert.deepEqual(stream.buffer, expected);
|
||||
});
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user