feat(Struct)
This commit is contained in:
34
test/ConstArray.test.js
Normal file
34
test/ConstArray.test.js
Normal file
@ -0,0 +1,34 @@
|
||||
import { describe, expect, test } from "vitest";
|
||||
import { ConstArray, parse, serialize, sizeof, sizeofHead } from "../src";
|
||||
import { filledDataView, sizedDataView } from ".";
|
||||
|
||||
describe(ConstArray.name, () => {
|
||||
test('serialize, Number', () => {
|
||||
const expected = filledDataView([
|
||||
0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
])
|
||||
let dv = sizedDataView(15)
|
||||
expect(() => serialize(dv, [1, 2], ConstArray(2), Number)).toThrow()
|
||||
|
||||
dv = sizedDataView(sizeof(ConstArray(2), Number))
|
||||
expect(16).toEqual(dv.byteLength)
|
||||
|
||||
serialize(dv, [1, 2], ConstArray(2), Number)
|
||||
expect(dv).toEqual(expected)
|
||||
})
|
||||
|
||||
test('parse, Number', () => {
|
||||
const expected = [1, 2]
|
||||
const dv = filledDataView([
|
||||
0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
])
|
||||
const actual = parse(dv, ConstArray(2), Number)
|
||||
expect(actual).toEqual(expected)
|
||||
})
|
||||
|
||||
test('sizeof', () => {
|
||||
expect(sizeofHead(ConstArray(2), Number)).toEqual(16)
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user