Skip to content

Commit 3079c57

Browse files
James Mtendamemacursoragent
andcommitted
test(zoo-gateway): cover stale baseUrl seeding path
Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 57a128a commit 3079c57

1 file changed

Lines changed: 27 additions & 3 deletions

File tree

src/core/webview/__tests__/ClineProvider.spec.ts

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3785,14 +3785,17 @@ describe("ClineProvider - Comprehensive Edit/Delete Edge Cases", () => {
37853785
expect(handleSpy).not.toHaveBeenCalled()
37863786
})
37873787

3788-
it("skips seeding when every zoo-gateway profile already has the current token", async () => {
3788+
it("skips seeding when every zoo-gateway profile already has the current token and base URL", async () => {
37893789
const { getCachedZooCodeToken } = await import("../../../services/zoo-code-auth")
37903790
vi.mocked(getCachedZooCodeToken).mockReturnValue("current-token")
37913791
const handleSpy = vi.spyOn(provider, "handleZooCodeCallback").mockResolvedValue(undefined)
37923792

37933793
;(provider as any).providerSettingsManager = {
37943794
listConfig: vi.fn().mockResolvedValue([{ name: "Zoo Gateway", apiProvider: "zoo-gateway" }]),
3795-
getProfile: vi.fn().mockResolvedValue({ zooSessionToken: "current-token" }),
3795+
getProfile: vi.fn().mockResolvedValue({
3796+
zooSessionToken: "current-token",
3797+
zooGatewayBaseUrl: "https://www.zoocode.dev/api/gateway/v1",
3798+
}),
37963799
}
37973800

37983801
await (provider as any).ensureZooGatewayProfileSeeded()
@@ -3807,13 +3810,34 @@ describe("ClineProvider - Comprehensive Edit/Delete Edge Cases", () => {
38073810

38083811
;(provider as any).providerSettingsManager = {
38093812
listConfig: vi.fn().mockResolvedValue([{ name: "Zoo Gateway", apiProvider: "zoo-gateway" }]),
3810-
getProfile: vi.fn().mockResolvedValue({ zooSessionToken: "stale-token" }),
3813+
getProfile: vi.fn().mockResolvedValue({
3814+
zooSessionToken: "stale-token",
3815+
zooGatewayBaseUrl: "https://www.zoocode.dev/api/gateway/v1",
3816+
}),
38113817
}
38123818

38133819
await (provider as any).ensureZooGatewayProfileSeeded()
38143820

38153821
expect(handleSpy).toHaveBeenCalledWith("fresh-token")
38163822
})
3823+
3824+
it("re-seeds when any zoo-gateway profile has a stale base URL", async () => {
3825+
const { getCachedZooCodeToken } = await import("../../../services/zoo-code-auth")
3826+
vi.mocked(getCachedZooCodeToken).mockReturnValue("current-token")
3827+
const handleSpy = vi.spyOn(provider, "handleZooCodeCallback").mockResolvedValue(undefined)
3828+
3829+
;(provider as any).providerSettingsManager = {
3830+
listConfig: vi.fn().mockResolvedValue([{ name: "Zoo Gateway", apiProvider: "zoo-gateway" }]),
3831+
getProfile: vi.fn().mockResolvedValue({
3832+
zooSessionToken: "current-token",
3833+
zooGatewayBaseUrl: "https://staging.zoocode.dev/api/gateway/v1",
3834+
}),
3835+
}
3836+
3837+
await (provider as any).ensureZooGatewayProfileSeeded()
3838+
3839+
expect(handleSpy).toHaveBeenCalledWith("current-token")
3840+
})
38173841
})
38183842
})
38193843
})

0 commit comments

Comments
 (0)