cb5bbbf382
- Eliminated core/ directory (252 files, 23 subdirs → distributed)
- Reduced max nesting from 9 levels to 5 levels
- Promoted tool subdirs to top level: exa/, lsp/, patch/, task/, web/
- Merged web-scrapers/ + web-search/ into web/{scrapers,search}/
- Flattened modes/interactive/ to modes/
- Split execution/ into: ipy/ (python), exec/ (bash), ssh/
- Renamed ipy/python-*.ts to ipy/*.ts (executor, kernel, etc.)
- Flattened cursor/exec-bridge.ts to cursor.ts
- Created logical groupings: config/, session/, extensibility/, export/
- Updated all imports across 500+ files
24 lines
841 B
TypeScript
24 lines
841 B
TypeScript
import { describe, expect, it } from "bun:test";
|
|
import { SettingsManager } from "$c/config/settings-manager";
|
|
|
|
describe("SettingsManager python settings", () => {
|
|
it("defaults to both and session", () => {
|
|
const settings = SettingsManager.inMemory();
|
|
|
|
expect(settings.getPythonToolMode()).toBe("both");
|
|
expect(settings.getPythonKernelMode()).toBe("session");
|
|
});
|
|
|
|
it("persists python tool and kernel modes", async () => {
|
|
const settings = SettingsManager.inMemory();
|
|
|
|
await settings.setPythonToolMode("bash-only");
|
|
await settings.setPythonKernelMode("per-call");
|
|
|
|
expect(settings.getPythonToolMode()).toBe("bash-only");
|
|
expect(settings.getPythonKernelMode()).toBe("per-call");
|
|
expect(settings.serialize().python?.toolMode).toBe("bash-only");
|
|
expect(settings.serialize().python?.kernelMode).toBe("per-call");
|
|
});
|
|
});
|