From 28bcc9f4e4457938dd222a22bca3102cc30654e5 Mon Sep 17 00:00:00 2001 From: Erik Engervall Date: Fri, 30 Apr 2021 14:19:02 +0200 Subject: [PATCH] Api refactor, return object for updateRelease Signed-off-by: Erik Engervall --- .../src/api/GitReleaseApiClient.ts | 16 ++++++++++------ .../src/features/Patch/hooks/usePatch.ts | 10 +++++----- .../src/features/PromoteRc/hooks/usePromoteRc.ts | 10 +++++----- .../src/test-helpers/test-helpers.ts | 8 +++++--- 4 files changed, 25 insertions(+), 19 deletions(-) diff --git a/plugins/git-release-manager/src/api/GitReleaseApiClient.ts b/plugins/git-release-manager/src/api/GitReleaseApiClient.ts index 5b70927e3f..b730c579e2 100644 --- a/plugins/git-release-manager/src/api/GitReleaseApiClient.ts +++ b/plugins/git-release-manager/src/api/GitReleaseApiClient.ts @@ -438,9 +438,11 @@ export class GitReleaseApiClient implements GitReleaseApi { }); return { - name: updatedRelease.name, - tagName: updatedRelease.tag_name, - htmlUrl: updatedRelease.html_url, + release: { + name: updatedRelease.name, + tagName: updatedRelease.tag_name, + htmlUrl: updatedRelease.html_url, + }, }; }; @@ -714,9 +716,11 @@ export interface GitReleaseApi { prerelease?: boolean; } & OwnerRepo, ) => Promise<{ - name: string | null; - tagName: string; - htmlUrl: string; + release: { + name: string | null; + tagName: string; + htmlUrl: string; + }; }>; /** diff --git a/plugins/git-release-manager/src/features/Patch/hooks/usePatch.ts b/plugins/git-release-manager/src/features/Patch/hooks/usePatch.ts index ce00c57e69..4d4d92414e 100644 --- a/plugins/git-release-manager/src/features/Patch/hooks/usePatch.ts +++ b/plugins/git-release-manager/src/features/Patch/hooks/usePatch.ts @@ -301,7 +301,7 @@ export function usePatch({ const selectedPatchCommit = releaseBranchRes.value.selectedPatchCommit; - const updatedRelease = await pluginApiClient + const { release } = await pluginApiClient .updateRelease({ owner: project.owner, repo: project.repo, @@ -316,13 +316,13 @@ ${selectedPatchCommit.commit.message}`, .catch(asyncCatcher); addStepToResponseSteps({ - message: `Updated release "${updatedRelease.name}"`, - secondaryMessage: `with tag ${updatedRelease.tagName}`, - link: updatedRelease.htmlUrl, + message: `Updated release "${release.name}"`, + secondaryMessage: `with tag ${release.tagName}`, + link: release.htmlUrl, }); return { - ...updatedRelease, + ...release, }; }, [createdReferenceRes.value, createdReferenceRes.error]); diff --git a/plugins/git-release-manager/src/features/PromoteRc/hooks/usePromoteRc.ts b/plugins/git-release-manager/src/features/PromoteRc/hooks/usePromoteRc.ts index 8d50449b01..0f880aedbc 100644 --- a/plugins/git-release-manager/src/features/PromoteRc/hooks/usePromoteRc.ts +++ b/plugins/git-release-manager/src/features/PromoteRc/hooks/usePromoteRc.ts @@ -140,7 +140,7 @@ export function usePromoteRc({ abortIfError(createRcRes.error); if (!createRcRes.value) return undefined; - const promotedRelease = await pluginApiClient + const { release } = await pluginApiClient .updateRelease({ owner: project.owner, repo: project.repo, @@ -151,13 +151,13 @@ export function usePromoteRc({ .catch(asyncCatcher); addStepToResponseSteps({ - message: `Promoted "${promotedRelease.name}"`, - secondaryMessage: `from "${rcRelease.tagName}" to "${promotedRelease.tagName}"`, - link: promotedRelease.htmlUrl, + message: `Promoted "${release.name}"`, + secondaryMessage: `from "${rcRelease.tagName}" to "${release.tagName}"`, + link: release.htmlUrl, }); return { - ...promotedRelease, + ...release, }; }, [createRcRes.value, createRcRes.error]); diff --git a/plugins/git-release-manager/src/test-helpers/test-helpers.ts b/plugins/git-release-manager/src/test-helpers/test-helpers.ts index a6fbb7e945..99443baa35 100644 --- a/plugins/git-release-manager/src/test-helpers/test-helpers.ts +++ b/plugins/git-release-manager/src/test-helpers/test-helpers.ts @@ -286,9 +286,11 @@ export const mockApiClient: GitReleaseApi = { })), updateRelease: jest.fn(async () => ({ - name: 'mock_update_release_name', - tagName: 'mock_update_release_tag_name', - htmlUrl: 'mock_update_release_html_url', + release: { + name: 'mock_update_release_name', + tagName: 'mock_update_release_tag_name', + htmlUrl: 'mock_update_release_html_url', + }, })), getAllTags: jest.fn(async () => [