(
permissionOverrides?: Partial<
ReturnType<typeof getDefaultAppState>['toolPermissionContext']
>,
)
| 168 | } |
| 169 | |
| 170 | function createToolUseContext( |
| 171 | permissionOverrides?: Partial< |
| 172 | ReturnType<typeof getDefaultAppState>['toolPermissionContext'] |
| 173 | >, |
| 174 | ) { |
| 175 | let appState = getDefaultAppState() |
| 176 | appState = { |
| 177 | ...appState, |
| 178 | toolPermissionContext: { |
| 179 | ...appState.toolPermissionContext, |
| 180 | ...permissionOverrides, |
| 181 | }, |
| 182 | } |
| 183 | |
| 184 | const setAppState = (updater: (prev: typeof appState) => typeof appState) => { |
| 185 | appState = updater(appState) |
| 186 | } |
| 187 | |
| 188 | return { |
| 189 | options: { |
| 190 | commands: [], |
| 191 | debug: false, |
| 192 | mainLoopModel: '/data/models/hf/moonshotai__Kimi-K2.7-Code', |
| 193 | tools: [SkillTool] as never, |
| 194 | verbose: false, |
| 195 | thinkingConfig: {} as never, |
| 196 | mcpClients: [], |
| 197 | mcpResources: {}, |
| 198 | isNonInteractiveSession: true, |
| 199 | agentDefinitions: { |
| 200 | activeAgents: [], |
| 201 | allAgents: [], |
| 202 | }, |
| 203 | }, |
| 204 | abortController: new AbortController(), |
| 205 | readFileState: {} as never, |
| 206 | getAppState: () => appState, |
| 207 | setAppState, |
| 208 | setAppStateForTasks: setAppState, |
| 209 | setInProgressToolUseIDs: () => {}, |
| 210 | setResponseLength: () => {}, |
| 211 | updateFileHistoryState: () => {}, |
| 212 | updateAttributionState: () => {}, |
| 213 | messages: [], |
| 214 | } as never |
| 215 | } |
| 216 | |
| 217 | beforeEach(() => { |
| 218 | mockCommands = [] |
no test coverage detected