mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-15 09:01:14 +00:00
test(coding-agent): update settings and extension tests
This commit is contained in:
parent
f9eb190ef9
commit
79ab767beb
2 changed files with 0 additions and 74 deletions
|
|
@ -297,19 +297,6 @@ describe("extensions discovery", () => {
|
|||
expect(result.extensions[0].path).toContain("my-ext.ts");
|
||||
});
|
||||
|
||||
it("resolves 3rd party npm dependencies (chalk)", async () => {
|
||||
// Load the real chalk-logger extension from examples
|
||||
const chalkLoggerPath = path.resolve(__dirname, "../examples/extensions/chalk-logger.ts");
|
||||
|
||||
const result = await discoverAndLoadExtensions([chalkLoggerPath], tempDir, tempDir);
|
||||
|
||||
expect(result.errors).toHaveLength(0);
|
||||
expect(result.extensions).toHaveLength(1);
|
||||
expect(result.extensions[0].path).toContain("chalk-logger.ts");
|
||||
// The extension registers event handlers, not commands/tools
|
||||
expect(result.extensions[0].handlers.size).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
it("resolves dependencies from extension's own node_modules", async () => {
|
||||
// Load extension that has its own package.json and node_modules with 'ms' package
|
||||
const extPath = path.resolve(__dirname, "../examples/extensions/with-deps");
|
||||
|
|
|
|||
|
|
@ -107,51 +107,6 @@ describe("SettingsManager", () => {
|
|||
});
|
||||
|
||||
describe("packages migration", () => {
|
||||
it("should migrate npm: sources from extensions to packages", () => {
|
||||
const settingsPath = join(agentDir, "settings.json");
|
||||
writeFileSync(
|
||||
settingsPath,
|
||||
JSON.stringify({
|
||||
extensions: ["npm:pi-doom", "/local/ext.ts", "npm:shitty-extensions"],
|
||||
}),
|
||||
);
|
||||
|
||||
const manager = SettingsManager.create(projectDir, agentDir);
|
||||
|
||||
expect(manager.getPackages()).toEqual(["npm:pi-doom", "npm:shitty-extensions"]);
|
||||
expect(manager.getExtensionPaths()).toEqual(["/local/ext.ts"]);
|
||||
});
|
||||
|
||||
it("should migrate git: sources from extensions to packages", () => {
|
||||
const settingsPath = join(agentDir, "settings.json");
|
||||
writeFileSync(
|
||||
settingsPath,
|
||||
JSON.stringify({
|
||||
extensions: ["git:github.com/user/repo", "/local/ext.ts"],
|
||||
}),
|
||||
);
|
||||
|
||||
const manager = SettingsManager.create(projectDir, agentDir);
|
||||
|
||||
expect(manager.getPackages()).toEqual(["git:github.com/user/repo"]);
|
||||
expect(manager.getExtensionPaths()).toEqual(["/local/ext.ts"]);
|
||||
});
|
||||
|
||||
it("should migrate raw github URLs from extensions to packages", () => {
|
||||
const settingsPath = join(agentDir, "settings.json");
|
||||
writeFileSync(
|
||||
settingsPath,
|
||||
JSON.stringify({
|
||||
extensions: ["https://github.com/user/repo", "/local/ext.ts"],
|
||||
}),
|
||||
);
|
||||
|
||||
const manager = SettingsManager.create(projectDir, agentDir);
|
||||
|
||||
expect(manager.getPackages()).toEqual(["https://github.com/user/repo"]);
|
||||
expect(manager.getExtensionPaths()).toEqual(["/local/ext.ts"]);
|
||||
});
|
||||
|
||||
it("should keep local-only extensions in extensions array", () => {
|
||||
const settingsPath = join(agentDir, "settings.json");
|
||||
writeFileSync(
|
||||
|
|
@ -167,22 +122,6 @@ describe("SettingsManager", () => {
|
|||
expect(manager.getExtensionPaths()).toEqual(["/local/ext.ts", "./relative/ext.ts"]);
|
||||
});
|
||||
|
||||
it("should preserve existing packages when migrating", () => {
|
||||
const settingsPath = join(agentDir, "settings.json");
|
||||
writeFileSync(
|
||||
settingsPath,
|
||||
JSON.stringify({
|
||||
packages: ["npm:existing-pkg"],
|
||||
extensions: ["npm:new-pkg", "/local/ext.ts"],
|
||||
}),
|
||||
);
|
||||
|
||||
const manager = SettingsManager.create(projectDir, agentDir);
|
||||
|
||||
expect(manager.getPackages()).toEqual(["npm:existing-pkg", "npm:new-pkg"]);
|
||||
expect(manager.getExtensionPaths()).toEqual(["/local/ext.ts"]);
|
||||
});
|
||||
|
||||
it("should handle packages with filtering objects", () => {
|
||||
const settingsPath = join(agentDir, "settings.json");
|
||||
writeFileSync(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue