feat(FN-2625): merge fusion/fn-2625
This commit is contained in:
@@ -1059,6 +1059,19 @@ describe.skip("fn pi extension", () => {
|
||||
"api",
|
||||
"repos/acme/demo/issues?state=open&per_page=5",
|
||||
]);
|
||||
|
||||
const store = new TaskStore(tmpDir, join(tmpDir, ".fusion-global-settings"));
|
||||
await store.init();
|
||||
const tasks = await store.listTasks({ includeArchived: true });
|
||||
expect(tasks).toHaveLength(2);
|
||||
const issueOneTask = tasks.find((task) => task.sourceIssue?.issueNumber === 1);
|
||||
expect(issueOneTask?.sourceIssue).toEqual({
|
||||
provider: "github",
|
||||
repository: "acme/demo",
|
||||
externalIssueId: "1",
|
||||
issueNumber: 1,
|
||||
url: "https://github.com/acme/demo/issues/1",
|
||||
});
|
||||
});
|
||||
|
||||
it("fn_task_browse_github_issues lists issues via gh api", async () => {
|
||||
|
||||
@@ -922,12 +922,26 @@ describe("runTaskImportGitHubInteractive", () => {
|
||||
description: "Description 1\n\nSource: https://github.com/owner/repo/issues/1",
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: "owner/repo",
|
||||
externalIssueId: "1",
|
||||
issueNumber: 1,
|
||||
url: "https://github.com/owner/repo/issues/1",
|
||||
},
|
||||
});
|
||||
expect(mockCreateTask).toHaveBeenCalledWith({
|
||||
title: "Third Issue",
|
||||
description: "Description 3\n\nSource: https://github.com/owner/repo/issues/3",
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: "owner/repo",
|
||||
externalIssueId: "3",
|
||||
issueNumber: 3,
|
||||
url: "https://github.com/owner/repo/issues/3",
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
@@ -978,6 +992,13 @@ describe("runTaskImportGitHubInteractive", () => {
|
||||
description: "Description 2\n\nSource: https://github.com/owner/repo/issues/2",
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: "owner/repo",
|
||||
externalIssueId: "2",
|
||||
issueNumber: 2,
|
||||
url: "https://github.com/owner/repo/issues/2",
|
||||
},
|
||||
});
|
||||
|
||||
const skipLine = logSpy.mock.calls.find(
|
||||
@@ -1224,6 +1245,13 @@ describe("runTaskImportFromGitHub", () => {
|
||||
description: "Description 1\n\nSource: https://github.com/owner/repo/issues/1",
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: "owner/repo",
|
||||
externalIssueId: "1",
|
||||
issueNumber: 1,
|
||||
url: "https://github.com/owner/repo/issues/1",
|
||||
},
|
||||
});
|
||||
|
||||
const successLine = logSpy.mock.calls.find(
|
||||
@@ -1299,6 +1327,13 @@ describe("runTaskImportFromGitHub", () => {
|
||||
description: "(no description)\n\nSource: https://github.com/owner/repo/issues/1",
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: "owner/repo",
|
||||
externalIssueId: "1",
|
||||
issueNumber: 1,
|
||||
url: "https://github.com/owner/repo/issues/1",
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1313,6 +1348,13 @@ describe("runTaskImportFromGitHub", () => {
|
||||
description: expect.stringContaining("Body"),
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: "owner/repo",
|
||||
externalIssueId: "1",
|
||||
issueNumber: 1,
|
||||
url: "https://github.com/owner/repo/issues/1",
|
||||
},
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -820,6 +820,13 @@ export async function runTaskImportGitHubInteractive(
|
||||
description,
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: `${owner}/${repo}`,
|
||||
externalIssueId: String(issue.number),
|
||||
issueNumber: issue.number,
|
||||
url: issue.html_url,
|
||||
},
|
||||
});
|
||||
|
||||
const label = task.title || task.description.slice(0, 60) + (task.description.length > 60 ? "…" : "");
|
||||
@@ -956,6 +963,13 @@ export async function runTaskImportFromGitHub(
|
||||
description,
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: `${owner}/${repo}`,
|
||||
externalIssueId: String(issue.number),
|
||||
issueNumber: issue.number,
|
||||
url: issue.html_url,
|
||||
},
|
||||
});
|
||||
|
||||
const label = task.title || task.description.slice(0, 60) + (task.description.length > 60 ? "…" : "");
|
||||
|
||||
@@ -801,6 +801,13 @@ export default function kbExtension(pi: ExtensionAPI) {
|
||||
description,
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: `${owner}/${repo}`,
|
||||
externalIssueId: String(issue.number),
|
||||
issueNumber: issue.number,
|
||||
url: issue.html_url,
|
||||
},
|
||||
});
|
||||
|
||||
await store.logEntry(task.id, "Imported from GitHub", sourceUrl);
|
||||
@@ -887,6 +894,13 @@ export default function kbExtension(pi: ExtensionAPI) {
|
||||
description,
|
||||
column: "triage",
|
||||
dependencies: [],
|
||||
sourceIssue: {
|
||||
provider: "github",
|
||||
repository: `${owner}/${repo}`,
|
||||
externalIssueId: String(issue.number),
|
||||
issueNumber: issue.number,
|
||||
url: issue.html_url,
|
||||
},
|
||||
});
|
||||
|
||||
await store.logEntry(task.id, "Imported from GitHub", sourceUrl);
|
||||
|
||||
Reference in New Issue
Block a user