mirror of
https://github.com/github/awesome-copilot.git
synced 2026-08-23 01:16:53 +00:00
fix(website): resolve extension owner plugin
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 31016278-f98b-48ef-8a77-430091b34b91
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
import assert from "node:assert/strict";
|
||||
import { test } from "node:test";
|
||||
import {
|
||||
buildExtensionPluginOwners,
|
||||
resolveExtensionPluginName,
|
||||
} from "./extension-plugin-ownership.mjs";
|
||||
|
||||
const namespace = "com.github.awesome-copilot";
|
||||
|
||||
test("resolves an extension bundled only by its parent plugin", () => {
|
||||
const owners = buildExtensionPluginOwners([
|
||||
{
|
||||
directoryName: "ember",
|
||||
manifest: {
|
||||
name: "ember",
|
||||
extensions: {
|
||||
[namespace]: {
|
||||
extensions: ["./extensions/daily-focus-board"],
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
]);
|
||||
|
||||
assert.equal(
|
||||
resolveExtensionPluginName("daily-focus-board", owners),
|
||||
"ember"
|
||||
);
|
||||
});
|
||||
|
||||
test("prefers a same-named standalone plugin over another owner", () => {
|
||||
const owners = buildExtensionPluginOwners([
|
||||
{
|
||||
directoryName: "parent-plugin",
|
||||
manifest: {
|
||||
name: "parent-plugin",
|
||||
extensions: {
|
||||
[namespace]: {
|
||||
extensions: ["./extensions/daily-focus-board/"],
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
directoryName: "daily-focus-board",
|
||||
manifest: { name: "daily-focus-board" },
|
||||
},
|
||||
]);
|
||||
|
||||
assert.equal(
|
||||
resolveExtensionPluginName("daily-focus-board", owners),
|
||||
"daily-focus-board"
|
||||
);
|
||||
});
|
||||
|
||||
test("preserves the extension name when no plugin owns it", () => {
|
||||
assert.equal(
|
||||
resolveExtensionPluginName("daily-focus-board", new Map()),
|
||||
"daily-focus-board"
|
||||
);
|
||||
});
|
||||
Reference in New Issue
Block a user