feat: chat rendering toolcalls, footer overview
This commit is contained in:
@@ -374,7 +374,7 @@ describe("/pygienium-all orchestrator (task 12)", () => {
|
||||
expect(joined).toContain("all [");
|
||||
});
|
||||
|
||||
it("renders only the unified widget in UI mode (no per-check spinner)", async () => {
|
||||
it("renders only the unified footer widget in UI mode (no per-check footer)", async () => {
|
||||
registerCheck(fakeCheck("alpha"));
|
||||
registerCheck(fakeCheck("beta"));
|
||||
const calls: Array<[string, string[] | undefined]> = [];
|
||||
@@ -387,14 +387,15 @@ describe("/pygienium-all orchestrator (task 12)", () => {
|
||||
await runAllChecks({ cwd, ui, hasUI: true });
|
||||
|
||||
const keys = new Set(calls.map(([k]) => k));
|
||||
// The unified strip drives the widget area…
|
||||
expect(keys.has("pygienium-all-progress")).toBe(true);
|
||||
// …and per-check strips never claim it, so no second spinner can
|
||||
// flicker/swap against the unified one.
|
||||
expect(keys.has("pygienium-progress")).toBe(false);
|
||||
// The all-run footer drives the belowEditor widget area under its own key…
|
||||
expect(keys.has("pygienium-all")).toBe(true);
|
||||
// …and per-check footers never claim their slot (footer:false), so two
|
||||
// overviews never compete over the same widget area.
|
||||
expect(keys.has("pygienium")).toBe(false);
|
||||
// The widget is cleared when the run completes.
|
||||
const last = calls[calls.length - 1]!;
|
||||
expect(last[0]).toBe("pygienium-all-progress");
|
||||
expect(last[1]).toBeUndefined();
|
||||
const last = calls[calls.length - 1];
|
||||
expect(last).toBeDefined();
|
||||
expect(last?.[0]).toBe("pygienium-all");
|
||||
expect(last?.[1]).toBeUndefined();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user