mirror of
https://github.com/codedread/bitjs
synced 2025-10-03 09:39:16 +02:00
62 lines
1.7 KiB
HTML
62 lines
1.7 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Unit tests for bitjs.io.ByteBufferBitStream</title>
|
|
<script src="muther.js"></script>
|
|
<script src="../io/bitstream.js"></script>
|
|
<script src="../io/bytebuffer.js"></script>
|
|
<script src="../io/bytestream.js"></script>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
const assert = muther.assert;
|
|
const assertEquals = muther.assertEquals;
|
|
const assertThrows = muther.assertThrows;
|
|
|
|
// TODO: Only test ByteBuffer here.
|
|
let buffer;
|
|
muther.go({
|
|
setUp: function() {
|
|
buffer = new bitjs.io.ByteBuffer(4);
|
|
},
|
|
tests: {
|
|
testWrite_SingleByte() {
|
|
buffer.writeNumber(192, 1);
|
|
assertEquals(1, buffer.ptr);
|
|
},
|
|
|
|
testWrite_SingleByteNegativeNumber() {
|
|
buffer.writeSignedNumber(-120, 1);
|
|
assertEquals(1, buffer.ptr);
|
|
},
|
|
|
|
testWrite_MultiByteNumber() {
|
|
buffer.writeNumber(1234, 4);
|
|
const stream = new bitjs.io.ByteStream(buffer.data.buffer);
|
|
assertEquals(4, buffer.ptr);
|
|
},
|
|
|
|
testWrite_MultiByteNegativeNumber() {
|
|
buffer.writeSignedNumber(-1234, 4);
|
|
assertEquals(4, buffer.ptr);
|
|
},
|
|
|
|
testWriteOverflowUnsigned() {
|
|
assertThrows(() => buffer.writeNumber(256, 1),
|
|
'Did not throw when trying to write a number into too-few bytes');
|
|
},
|
|
|
|
testWriteOverflowSignedPositive() {
|
|
assertThrows(() => buffer.writeSignedNumber(128, 1),
|
|
'Did not throw when trying to write a signed number into too-few bytes');
|
|
},
|
|
|
|
testWriteOverflowSignedNegative() {
|
|
assertThrows(() => buffer.writeSignedNumber(-129, 1),
|
|
'Did not throw when trying to write a negative signed number into too-few bytes');
|
|
},
|
|
},
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|