Skip to content
21 linesCodeBlameRaw
1import assert from "node:assert/strict";
2import { test } from "node:test";
3
4import { memberHandle, memberName } from "./chat.ts";
5
6test("a member shows by their display name first", () => {
7 assert.equal(memberName({ name: "ana", display_username: "Ana", display_name: "Ana Lima" }), "Ana Lima");
8 assert.equal(memberName({ name: "reviewer", display_name: "Reviewer" }), "Reviewer");
9});
10
11test("without a display name, a member shows by their username in its chosen case", () => {
12 assert.equal(memberName({ name: "ana", display_username: "AnaL", display_name: "" }), "ana");
13 assert.equal(memberName({ name: "ana", display_username: "Ana", display_name: " " }), "Ana");
14 assert.equal(memberName({ name: "ana", display_name: null }), "ana");
15});
16
17test("a handle keeps its chosen case only when it is the same name", () => {
18 assert.equal(memberHandle({ name: "chase", display_username: "Chase" }), "Chase");
19 assert.equal(memberHandle({ name: "chase", display_username: "Other" }), "chase");
20 assert.equal(memberHandle({ name: "chase" }), "chase");
21});