diff --git a/src/services/code-index/__tests__/orchestrator.spec.ts b/src/services/code-index/__tests__/orchestrator.spec.ts
index b7b478c43e..f12d84ed7f 100644
--- a/src/services/code-index/__tests__/orchestrator.spec.ts
+++ b/src/services/code-index/__tests__/orchestrator.spec.ts
@@ -217,7 +217,7 @@ describe("CodeIndexOrchestrator - error path cleanup gating", () => {
getProviderSettings: vi.fn().mockReturnValue({}),
setProviderSettings: vi.fn(),
}
- const mgr = new configManagerModule.CodeIndexConfigManager(mockContextProxy)
+ const mgr = new configManagerModule.CodeIndexConfigManager(mockContextProxy as any)
await mgr.loadConfiguration()
const requiresRestart = mgr.doesConfigChangeRequireRestart(prev)
expect(requiresRestart).toBe(true)
diff --git a/webview-ui/src/components/chat/__tests__/CodeIndexPopover.auto-populate.spec.tsx b/webview-ui/src/components/chat/__tests__/CodeIndexPopover.auto-populate.spec.tsx
index 658b0ab529..ecf2b233cf 100644
--- a/webview-ui/src/components/chat/__tests__/CodeIndexPopover.auto-populate.spec.tsx
+++ b/webview-ui/src/components/chat/__tests__/CodeIndexPopover.auto-populate.spec.tsx
@@ -309,59 +309,6 @@ describe("CodeIndexPopover - Auto-population Feature Logic", () => {
awsProfile: "default",
}
- /**
- * UI/component tests for codebaseIndexOpenRouterEmbedderBaseUrl field
- */
- describe("CodeIndexPopover - OpenRouter Embedder Base URL Field", () => {
- /**
- * Test 1: Renders VSCodeTextField for codebaseIndexOpenRouterEmbedderBaseUrl
- */
- test("renders VSCodeTextField for codebaseIndexOpenRouterEmbedderBaseUrl", () => {
- const settings = {
- codebaseIndexEmbedderProvider: "openrouter",
- codebaseIndexOpenRouterEmbedderBaseUrl: "https://openrouter.ai/api/v1",
- }
- const rendered = ``
- expect(rendered).toContain('data-testid="openrouter-base-url"')
- expect(rendered).toContain(settings.codebaseIndexOpenRouterEmbedderBaseUrl)
- })
-
- /**
- * Test 2: Calls updateSetting on user input
- */
- test("calls updateSetting when user changes base URL", () => {
- const mockUpdateSetting = vi.fn()
- const event = { target: { value: "https://custom.openrouter.ai/api/v1" } }
- mockUpdateSetting("codebaseIndexOpenRouterEmbedderBaseUrl", event.target.value)
- expect(mockUpdateSetting).toHaveBeenCalledWith(
- "codebaseIndexOpenRouterEmbedderBaseUrl",
- "https://custom.openrouter.ai/api/v1",
- )
- })
-
- /**
- * Test 3: Validation error shown for invalid URL
- */
- test("shows validation error for invalid OpenRouter base URL", () => {
- const invalidUrl = "not-a-url"
- const formErrors = { codebaseIndexOpenRouterEmbedderBaseUrl: "Invalid URL" }
- const rendered = ``
- expect(rendered).toContain("border-red-500")
- expect(formErrors.codebaseIndexOpenRouterEmbedderBaseUrl).toBe("Invalid URL")
- })
-
- /**
- * Test 4: No error for valid URL
- */
- test("does not show error for valid OpenRouter base URL", () => {
- const validUrl = "https://openrouter.ai/api/v1"
- const formErrors: Record = {}
- const rendered = ``
- expect(rendered).not.toContain("border-red-500")
- expect(formErrors.codebaseIndexOpenRouterEmbedderBaseUrl).toBeUndefined()
- })
- })
-
// Simulate the onValueChange logic
const value = "bedrock"
@@ -383,3 +330,56 @@ describe("CodeIndexPopover - Auto-population Feature Logic", () => {
expect(mockUpdateSetting).toHaveBeenCalledTimes(1)
})
})
+
+/**
+ * UI/component tests for codebaseIndexOpenRouterEmbedderBaseUrl field
+ */
+describe("CodeIndexPopover - OpenRouter Embedder Base URL Field", () => {
+ /**
+ * Test 1: Renders VSCodeTextField for codebaseIndexOpenRouterEmbedderBaseUrl
+ */
+ test("renders VSCodeTextField for codebaseIndexOpenRouterEmbedderBaseUrl", () => {
+ const settings = {
+ codebaseIndexEmbedderProvider: "openrouter",
+ codebaseIndexOpenRouterEmbedderBaseUrl: "https://openrouter.ai/api/v1",
+ }
+ const rendered = ``
+ expect(rendered).toContain('data-testid="openrouter-base-url"')
+ expect(rendered).toContain(settings.codebaseIndexOpenRouterEmbedderBaseUrl)
+ })
+
+ /**
+ * Test 2: Calls updateSetting on user input
+ */
+ test("calls updateSetting when user changes base URL", () => {
+ const mockUpdateSetting = vi.fn()
+ const event = { target: { value: "https://custom.openrouter.ai/api/v1" } }
+ mockUpdateSetting("codebaseIndexOpenRouterEmbedderBaseUrl", event.target.value)
+ expect(mockUpdateSetting).toHaveBeenCalledWith(
+ "codebaseIndexOpenRouterEmbedderBaseUrl",
+ "https://custom.openrouter.ai/api/v1",
+ )
+ })
+
+ /**
+ * Test 3: Validation error shown for invalid URL
+ */
+ test("shows validation error for invalid OpenRouter base URL", () => {
+ const invalidUrl = "not-a-url"
+ const formErrors = { codebaseIndexOpenRouterEmbedderBaseUrl: "Invalid URL" }
+ const rendered = ``
+ expect(rendered).toContain("border-red-500")
+ expect(formErrors.codebaseIndexOpenRouterEmbedderBaseUrl).toBe("Invalid URL")
+ })
+
+ /**
+ * Test 4: No error for valid URL
+ */
+ test("does not show error for valid OpenRouter base URL", () => {
+ const validUrl = "https://openrouter.ai/api/v1"
+ const formErrors: Record = {}
+ const rendered = ``
+ expect(rendered).not.toContain("border-red-500")
+ expect(formErrors.codebaseIndexOpenRouterEmbedderBaseUrl).toBeUndefined()
+ })
+})