|
@@ -7,7 +7,6 @@ import { ContextProxy } from "../../config/ContextProxy"
|
|
|
import { Task } from "../../task/Task"
|
|
import { Task } from "../../task/Task"
|
|
|
import type { HistoryItem, ProviderName } from "@roo-code/types"
|
|
import type { HistoryItem, ProviderName } from "@roo-code/types"
|
|
|
|
|
|
|
|
-// Mock setup
|
|
|
|
|
vi.mock("vscode", () => ({
|
|
vi.mock("vscode", () => ({
|
|
|
ExtensionContext: vi.fn(),
|
|
ExtensionContext: vi.fn(),
|
|
|
OutputChannel: vi.fn(),
|
|
OutputChannel: vi.fn(),
|
|
@@ -54,7 +53,8 @@ vi.mock("vscode", () => ({
|
|
|
},
|
|
},
|
|
|
version: "1.85.0",
|
|
version: "1.85.0",
|
|
|
}))
|
|
}))
|
|
|
-// Create a counter for unique task IDs
|
|
|
|
|
|
|
+
|
|
|
|
|
+// Create a counter for unique task IDs.
|
|
|
let taskIdCounter = 0
|
|
let taskIdCounter = 0
|
|
|
|
|
|
|
|
vi.mock("../../task/Task", () => ({
|
|
vi.mock("../../task/Task", () => ({
|
|
@@ -75,8 +75,11 @@ vi.mock("../../task/Task", () => ({
|
|
|
parentTask: options.parentTask,
|
|
parentTask: options.parentTask,
|
|
|
})),
|
|
})),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("../../prompts/sections/custom-instructions")
|
|
vi.mock("../../prompts/sections/custom-instructions")
|
|
|
|
|
+
|
|
|
vi.mock("../../../utils/safeWriteJson")
|
|
vi.mock("../../../utils/safeWriteJson")
|
|
|
|
|
+
|
|
|
vi.mock("../../../api", () => ({
|
|
vi.mock("../../../api", () => ({
|
|
|
buildApiHandler: vi.fn().mockReturnValue({
|
|
buildApiHandler: vi.fn().mockReturnValue({
|
|
|
getModel: vi.fn().mockReturnValue({
|
|
getModel: vi.fn().mockReturnValue({
|
|
@@ -85,12 +88,14 @@ vi.mock("../../../api", () => ({
|
|
|
}),
|
|
}),
|
|
|
}),
|
|
}),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("../../../integrations/workspace/WorkspaceTracker", () => ({
|
|
vi.mock("../../../integrations/workspace/WorkspaceTracker", () => ({
|
|
|
default: vi.fn().mockImplementation(() => ({
|
|
default: vi.fn().mockImplementation(() => ({
|
|
|
initializeFilePaths: vi.fn(),
|
|
initializeFilePaths: vi.fn(),
|
|
|
dispose: vi.fn(),
|
|
dispose: vi.fn(),
|
|
|
})),
|
|
})),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("../../diff/strategies/multi-search-replace", () => ({
|
|
vi.mock("../../diff/strategies/multi-search-replace", () => ({
|
|
|
MultiSearchReplaceDiffStrategy: vi.fn().mockImplementation(() => ({
|
|
MultiSearchReplaceDiffStrategy: vi.fn().mockImplementation(() => ({
|
|
|
getToolDescription: () => "test",
|
|
getToolDescription: () => "test",
|
|
@@ -98,6 +103,7 @@ vi.mock("../../diff/strategies/multi-search-replace", () => ({
|
|
|
applyDiff: vi.fn(),
|
|
applyDiff: vi.fn(),
|
|
|
})),
|
|
})),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("@roo-code/cloud", () => ({
|
|
vi.mock("@roo-code/cloud", () => ({
|
|
|
CloudService: {
|
|
CloudService: {
|
|
|
hasInstance: vi.fn().mockReturnValue(true),
|
|
hasInstance: vi.fn().mockReturnValue(true),
|
|
@@ -108,7 +114,12 @@ vi.mock("@roo-code/cloud", () => ({
|
|
|
},
|
|
},
|
|
|
},
|
|
},
|
|
|
getRooCodeApiUrl: vi.fn().mockReturnValue("https://app.roocode.com"),
|
|
getRooCodeApiUrl: vi.fn().mockReturnValue("https://app.roocode.com"),
|
|
|
|
|
+ ORGANIZATION_ALLOW_ALL: {
|
|
|
|
|
+ allowAll: true,
|
|
|
|
|
+ providers: {},
|
|
|
|
|
+ },
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("../../../shared/modes", () => ({
|
|
vi.mock("../../../shared/modes", () => ({
|
|
|
modes: [
|
|
modes: [
|
|
|
{
|
|
{
|
|
@@ -132,20 +143,25 @@ vi.mock("../../../shared/modes", () => ({
|
|
|
}),
|
|
}),
|
|
|
defaultModeSlug: "code",
|
|
defaultModeSlug: "code",
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("../../prompts/system", () => ({
|
|
vi.mock("../../prompts/system", () => ({
|
|
|
SYSTEM_PROMPT: vi.fn().mockResolvedValue("mocked system prompt"),
|
|
SYSTEM_PROMPT: vi.fn().mockResolvedValue("mocked system prompt"),
|
|
|
codeMode: "code",
|
|
codeMode: "code",
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("../../../api/providers/fetchers/modelCache", () => ({
|
|
vi.mock("../../../api/providers/fetchers/modelCache", () => ({
|
|
|
getModels: vi.fn().mockResolvedValue({}),
|
|
getModels: vi.fn().mockResolvedValue({}),
|
|
|
flushModels: vi.fn(),
|
|
flushModels: vi.fn(),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("../../../integrations/misc/extract-text", () => ({
|
|
vi.mock("../../../integrations/misc/extract-text", () => ({
|
|
|
extractTextFromFile: vi.fn().mockResolvedValue("Mock file content"),
|
|
extractTextFromFile: vi.fn().mockResolvedValue("Mock file content"),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("p-wait-for", () => ({
|
|
vi.mock("p-wait-for", () => ({
|
|
|
default: vi.fn().mockImplementation(async () => Promise.resolve()),
|
|
default: vi.fn().mockImplementation(async () => Promise.resolve()),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("fs/promises", () => ({
|
|
vi.mock("fs/promises", () => ({
|
|
|
mkdir: vi.fn().mockResolvedValue(undefined),
|
|
mkdir: vi.fn().mockResolvedValue(undefined),
|
|
|
writeFile: vi.fn().mockResolvedValue(undefined),
|
|
writeFile: vi.fn().mockResolvedValue(undefined),
|
|
@@ -153,6 +169,7 @@ vi.mock("fs/promises", () => ({
|
|
|
unlink: vi.fn().mockResolvedValue(undefined),
|
|
unlink: vi.fn().mockResolvedValue(undefined),
|
|
|
rmdir: vi.fn().mockResolvedValue(undefined),
|
|
rmdir: vi.fn().mockResolvedValue(undefined),
|
|
|
}))
|
|
}))
|
|
|
|
|
+
|
|
|
vi.mock("@roo-code/telemetry", () => ({
|
|
vi.mock("@roo-code/telemetry", () => ({
|
|
|
TelemetryService: {
|
|
TelemetryService: {
|
|
|
hasInstance: vi.fn().mockReturnValue(true),
|
|
hasInstance: vi.fn().mockReturnValue(true),
|