inventoresed
Version:
Z-Wave driver written entirely in JavaScript/TypeScript
22 lines (19 loc) • 812 B
text/typescript
import { isMessagePriority, MessagePriority } from "./Transmission";
describe("lib/message/Constants => isMessagePriority() => ", () => {
it("should detect numbers in the enum range as a message priority", () => {
const numericKeys = Object.keys(MessagePriority)
.map((key) => parseInt(key, 10))
.filter((num) => !Number.isNaN(num));
const minKey = Math.min(...numericKeys);
const maxKey = Math.max(...numericKeys);
for (let num = minKey - 2; num <= maxKey + 2; num++) {
expect(isMessagePriority(num)).toBe(num >= minKey && num <= maxKey);
}
});
it("should not detect anything else as a message priority", () => {
const notAPriority: any[] = [null, undefined, "", [], {}, true, false];
for (const stuff of notAPriority) {
expect(isMessagePriority(stuff)).toBe(false);
}
});
});