1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-14 17:04:59 +00:00
serenity/Userland/Libraries/LibJS/Tests/builtins/SharedArrayBuffer/SharedArrayBuffer.js
Shannon Booth 3781948f0c LibJS: Add initial implementation for SharedArrayBuffer
None of the actual sharing is implemented yet, but this is enough for
most basic functionality.

Diff Tests:
    +260     -262    +2 💀
2023-07-01 16:55:17 +01:00

19 lines
765 B
JavaScript

test("basic functionality", () => {
expect(SharedArrayBuffer).toHaveLength(1);
expect(SharedArrayBuffer.name).toBe("SharedArrayBuffer");
expect(SharedArrayBuffer.prototype.constructor).toBe(SharedArrayBuffer);
expect(new SharedArrayBuffer()).toBeInstanceOf(SharedArrayBuffer);
expect(typeof new SharedArrayBuffer()).toBe("object");
});
test("SharedArrayBuffer constructor must be invoked with 'new'", () => {
expect(() => {
SharedArrayBuffer();
}).toThrowWithMessage(TypeError, "SharedArrayBuffer constructor must be called with 'new'");
});
test("SharedArrayBuffer size limit", () => {
expect(() => {
new SharedArrayBuffer(2 ** 53);
}).toThrowWithMessage(RangeError, "Invalid shared array buffer length");
});