* fix(app): align turn footer actions Keep running-turn actions in the same position as completed-turn actions and use the shared small icon size for both copy and fork controls. * feat(app): improve sidebar workspace identity Make dense sidebar workspace rows easier to scan and let each device control how connected hosts are identified. * fix(app): keep host badges readable Use a compact display menu and keep identity color on the host icon so translated controls fit and badge text retains standard contrast. * fix(app): announce selected sidebar badge mode * fix(app): retain icon-only host names for screen readers * fix(app): name hoisted workspace rows * fix(app): retain host identity in workspace labels * fix(app): retain workspace status in row labels * fix(app): defer host appearance until identity resolves * fix(app): serialize host appearance writes * fix(app): serialize host registry writes * fix(app): bound sidebar host badge labels * test(app): match workspace status labels * fix(app): consolidate sidebar identity behavior * test(app): assert status grouping behavior * fix(app): keep sidebar row actions accessible * fix(app): stabilize optimistic message layout
32 lines
1.1 KiB
TypeScript
32 lines
1.1 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { getProjectStatusBadgeContent } from "./project-status-badge-content";
|
|
|
|
describe("getProjectStatusBadgeContent", () => {
|
|
it("shows a running dot while working", () => {
|
|
expect(getProjectStatusBadgeContent("running")).toEqual({ kind: "dot", bucket: "running" });
|
|
});
|
|
|
|
it("shows the alert when input is needed", () => {
|
|
expect(getProjectStatusBadgeContent("needs_input")).toEqual({ kind: "alert" });
|
|
});
|
|
|
|
it("shows a failed dot when a workspace failed", () => {
|
|
expect(getProjectStatusBadgeContent("failed")).toEqual({ kind: "dot", bucket: "failed" });
|
|
});
|
|
|
|
it("shows an attention dot when a workspace awaits review", () => {
|
|
expect(getProjectStatusBadgeContent("attention")).toEqual({
|
|
kind: "dot",
|
|
bucket: "attention",
|
|
});
|
|
});
|
|
|
|
it("shows nothing when the project is done", () => {
|
|
expect(getProjectStatusBadgeContent("done")).toBeNull();
|
|
});
|
|
|
|
it("shows nothing when there is no aggregate bucket to surface", () => {
|
|
expect(getProjectStatusBadgeContent(null)).toBeNull();
|
|
});
|
|
});
|