Files
video_socket-server/client/test/unit/memoryhelper.test.js

68 lines
1.7 KiB
JavaScript
Raw Permalink Normal View History

2026-04-29 15:18:30 +08:00
import {
MemoryHelper
2026-05-25 20:37:36 +08:00
} from "../../src/utils/memoryhelper.js";
2026-04-29 15:18:30 +08:00
describe(`MemoryHelper.writeSingleBit`, () => {
test('turn on with offset 0', () => {
let bytes = new ArrayBuffer(3);
MemoryHelper.writeSingleBit(bytes, 0, false);
// check 00 00 00
const view = new Uint8Array(bytes);
expect(view[0]).toBe(0);
expect(view[1]).toBe(0);
expect(view[2]).toBe(0);
});
test('turn off with offset 0', () => {
let bytes = new ArrayBuffer(3);
MemoryHelper.writeSingleBit(bytes, 0, true);
// check 00 00 01
const view = new Uint8Array(bytes);
expect(view[0]).toBe(1);
expect(view[1]).toBe(0);
expect(view[2]).toBe(0);
MemoryHelper.writeSingleBit(bytes, 0, false);
// check 00 00 00
expect(view[0]).toBe(0);
expect(view[1]).toBe(0);
expect(view[2]).toBe(0);
});
test('turn on with offset 32', () => {
let bytes = new ArrayBuffer(3);
MemoryHelper.writeSingleBit(bytes, 8, true);
// check 00 01 00
const view = new Uint8Array(bytes);
expect(view[0]).toBe(0);
expect(view[1]).toBe(1);
expect(view[2]).toBe(0);
MemoryHelper.writeSingleBit(bytes, 0, true);
// check 00 01 01
expect(view[0]).toBe(1);
expect(view[1]).toBe(1);
expect(view[2]).toBe(0);
});
test('turn on with offset 15', () => {
let bytes = new ArrayBuffer(3);
MemoryHelper.writeSingleBit(bytes, 15, true);
// check 00 80 00
const view = new Uint8Array(bytes);
expect(view[0]).toBe(0);
expect(view[1]).toBe(128);
expect(view[2]).toBe(0);
MemoryHelper.writeSingleBit(bytes, 15, false);
// check 00 00 00
expect(view[0]).toBe(0);
expect(view[1]).toBe(0);
expect(view[2]).toBe(0);
});
2026-05-25 20:37:36 +08:00
});