Skip to content

Commit 877a5c7

Browse files
committed
test: add encodeAndAddWellKnownMetadata tests
Signed-off-by: Kevin Viglucci <[email protected]>
1 parent 6489f21 commit 877a5c7

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import {
2+
encodeAndAddWellKnownMetadata,
3+
WellKnownMimeType,
4+
} from "rsocket-composite-metadata";
5+
import { readUInt24BE } from "rsocket-core";
6+
7+
describe("encodeWellKnownMetadataHeader", () => {
8+
it("encodes the header as per spec when WellKnownMimeType given", () => {
9+
const metadata = encodeAndAddWellKnownMetadata(
10+
Buffer.from([]),
11+
WellKnownMimeType.MESSAGE_RSOCKET_MIMETYPE,
12+
Buffer.from("test")
13+
);
14+
15+
// 122 | 128
16+
const maskedId = metadata.readUInt8(0);
17+
const length = readUInt24BE(metadata, 1);
18+
const value = metadata.slice(4, metadata.length);
19+
20+
expect(maskedId).toBe(250);
21+
expect(length).toBe(4);
22+
expect(value.length).toBe(4);
23+
expect(value.toString("utf-8")).toBe("test");
24+
});
25+
26+
it("encodes the header as per spec when identifier given", () => {
27+
const metadata = encodeAndAddWellKnownMetadata(
28+
Buffer.from([]),
29+
// MESSAGE_RSOCKET_MIMETYPE
30+
122,
31+
Buffer.from("test")
32+
);
33+
34+
// 122 | 128
35+
const maskedId = metadata.readUInt8(0);
36+
const length = readUInt24BE(metadata, 1);
37+
const value = metadata.slice(4, metadata.length);
38+
39+
expect(maskedId).toBe(250);
40+
expect(length).toBe(4);
41+
expect(value.length).toBe(4);
42+
expect(value.toString("utf-8")).toBe("test");
43+
});
44+
});

0 commit comments

Comments
 (0)