Skip to content

Commit 5613913

Browse files
committed
Tests: restore stale detail response coverage
1 parent a59f270 commit 5613913

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

ui/src/ui/controllers/skills.test.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { describe, expect, it, vi } from "vitest";
22
import {
33
installSkill,
4+
loadClawHubDetail,
45
saveSkillApiKey,
56
searchClawHub,
67
setClawHubSearchQuery,
@@ -156,6 +157,29 @@ describe("searchClawHub", () => {
156157
});
157158
});
158159

160+
describe("loadClawHubDetail", () => {
161+
it("ignores stale detail responses after slug changes", async () => {
162+
const { state, request } = createState();
163+
const queue = createDeferredRequestQueue(request);
164+
165+
const firstPending = loadClawHubDetail(state, "github");
166+
const secondPending = loadClawHubDetail(state, "gitlab");
167+
168+
queue.resolveNext({
169+
skill: { slug: "github", displayName: "GitHub", createdAt: 1, updatedAt: 2 },
170+
});
171+
await firstPending;
172+
173+
queue.resolveNext({
174+
skill: { slug: "gitlab", displayName: "GitLab", createdAt: 3, updatedAt: 4 },
175+
});
176+
await secondPending;
177+
178+
expect(state.clawhubDetailLoading).toBe(false);
179+
expect(state.clawhubDetail?.skill?.slug).toBe("gitlab");
180+
});
181+
});
182+
159183
describe("skill mutations", () => {
160184
it.each([
161185
{

0 commit comments

Comments
 (0)