fix(FN-1349): add tests for resume/start button on terminated agents
This commit is contained in:
@@ -458,10 +458,34 @@ describe("AgentDetailView", () => {
|
||||
);
|
||||
|
||||
await waitFor(() => {
|
||||
expect(screen.getByText("Start")).toBeInTheDocument();
|
||||
expect(screen.getByText("Delete")).toBeInTheDocument();
|
||||
});
|
||||
});
|
||||
|
||||
it("shows Start button for terminated agent", async () => {
|
||||
mockFetchAgent.mockResolvedValue(createMockAgent({ state: "terminated" }));
|
||||
mockUpdateAgentState.mockResolvedValue(createMockAgent({ state: "active" }));
|
||||
|
||||
render(
|
||||
<AgentDetailView
|
||||
agentId="agent-001"
|
||||
onClose={vi.fn()}
|
||||
addToast={vi.fn()}
|
||||
/>
|
||||
);
|
||||
|
||||
await waitFor(() => {
|
||||
expect(screen.getByText("Start")).toBeInTheDocument();
|
||||
});
|
||||
|
||||
await userEvent.click(screen.getByText("Start"));
|
||||
|
||||
await waitFor(() => {
|
||||
expect(mockUpdateAgentState).toHaveBeenCalledWith("agent-001", "active", undefined);
|
||||
});
|
||||
});
|
||||
|
||||
it("shows Delete button for idle agent", async () => {
|
||||
mockFetchAgent.mockResolvedValue(createMockAgent({ state: "idle" }));
|
||||
|
||||
|
||||
@@ -581,6 +581,15 @@ describe("AgentListModal", () => {
|
||||
const deleteButtons = screen.getAllByTitle("Delete");
|
||||
expect(deleteButtons.length).toBeGreaterThanOrEqual(2);
|
||||
});
|
||||
|
||||
// Verify Start button appears for terminated agent (agent-004)
|
||||
const agentCards = document.querySelectorAll(".agent-card");
|
||||
let terminatedCard: Element | null = null;
|
||||
agentCards.forEach(card => {
|
||||
if (card.textContent?.includes("agent-004")) terminatedCard = card;
|
||||
});
|
||||
const terminatedStartBtn = terminatedCard?.querySelector('[title="Start"]');
|
||||
expect(terminatedStartBtn).toBeTruthy();
|
||||
});
|
||||
|
||||
it("confirms before deleting agent", async () => {
|
||||
|
||||
Reference in New Issue
Block a user