fix(ui): show workspace readiness dot and bounded session accordions
This commit is contained in:
@@ -423,6 +423,26 @@ test("Archive accordion expands to reveal archived sessions", async () => {
|
||||
expect(screen.getByText("Attiva uno")).toBeInTheDocument();
|
||||
});
|
||||
|
||||
test("session accordion exposes labelled panels and supports independent keyboard toggles", async () => {
|
||||
wrap();
|
||||
await screen.findByText("Attiva uno");
|
||||
const active = screen.getByRole("button", { name: "Active sessions" });
|
||||
const archive = screen.getByRole("button", { name: "Archive (1)" });
|
||||
expect(active).toHaveAttribute("aria-expanded", "true");
|
||||
expect(archive).toHaveAttribute("aria-expanded", "false");
|
||||
expect(screen.getByRole("region", { name: "Active sessions" })).toHaveClass("thot-session-accordion__panel");
|
||||
archive.focus();
|
||||
await userEvent.keyboard("{Enter}");
|
||||
expect(archive).toHaveAttribute("aria-expanded", "true");
|
||||
expect(screen.getByRole("region", { name: "Archive (1)" })).toHaveAttribute("tabindex", "0");
|
||||
expect(active).toHaveAttribute("aria-expanded", "true");
|
||||
active.focus();
|
||||
await userEvent.keyboard(" ");
|
||||
expect(active).toHaveAttribute("aria-expanded", "false");
|
||||
expect(screen.queryByText("Attiva uno")).not.toBeInTheDocument();
|
||||
expect(screen.getByText("Archiviata due")).toBeInTheDocument();
|
||||
});
|
||||
|
||||
test("Resume from the panel activates the session and closes the panel", async () => {
|
||||
let resumed: string | null = null;
|
||||
useSessionStore.setState({
|
||||
|
||||
Reference in New Issue
Block a user