31 lines
822 B
TypeScript
31 lines
822 B
TypeScript
import { createId } from "$lib/Id";
|
|
import { isMe, type Me } from "$lib/me";
|
|
import { equal, ok } from "assert";
|
|
import { describe, it } from "vitest";
|
|
|
|
describe("me", () => {
|
|
describe("isMe", () => {
|
|
const target: Me = {
|
|
id: createId(),
|
|
role: "test-role",
|
|
username: "Ms. User",
|
|
};
|
|
|
|
it("returns true when the target is shaped like a 'Me'", () => {
|
|
ok(isMe(target));
|
|
});
|
|
|
|
it("returns false when the target is missing a property", () => {
|
|
const { id, role, username } = target;
|
|
equal(isMe({ role, username }), false);
|
|
equal(isMe({ id, username }), false);
|
|
equal(isMe({ id, role }), false);
|
|
});
|
|
|
|
it("returns false when the target has an extra property", () => {
|
|
const { id, role, username } = target;
|
|
equal(isMe({ id, role, username, extra: "something" }), false);
|
|
});
|
|
});
|
|
});
|