diff --git a/pkg/cmd/release/delete/delete.go b/pkg/cmd/release/delete/delete.go index f4b124e97..059305be7 100644 --- a/pkg/cmd/release/delete/delete.go +++ b/pkg/cmd/release/delete/delete.go @@ -49,7 +49,7 @@ func NewCmdDelete(f *cmdutil.Factory, runF func(*DeleteOptions) error) *cobra.Co } cmd.Flags().BoolVarP(&opts.SkipConfirm, "yes", "y", false, "Skip the confirmation prompt") - cmd.Flags().BoolVar(&opts.CleanupTag, "cleanup-tag", false, "Delete the tag attached to the release") + cmd.Flags().BoolVar(&opts.CleanupTag, "cleanup-tag", false, "Delete the specified tag in addition to its release") return cmd } @@ -98,15 +98,15 @@ func deleteRun(opts *DeleteOptions) error { if err != nil { return err } - cleanupMessage = " and cleanup the tag" + cleanupMessage = " and tag" } - + if !opts.IO.IsStdoutTTY() || !opts.IO.IsStderrTTY() { return nil } iofmt := opts.IO.ColorScheme() - fmt.Fprintf(opts.IO.ErrOut, "%s Deleted release %s%s\n", iofmt.SuccessIconWithColor(iofmt.Red), release.TagName, cleanupMessage) + fmt.Fprintf(opts.IO.ErrOut, "%s Deleted release%s %s\n", iofmt.SuccessIconWithColor(iofmt.Red), cleanupMessage, release.TagName) if !release.IsDraft && !mustCleanupTag { fmt.Fprintf(opts.IO.ErrOut, "%s Note that the %s git tag still remains in the repository\n", iofmt.WarningIcon(), release.TagName) } @@ -135,7 +135,7 @@ func deleteRelease(httpClient *http.Client, releaseURL string) error { func deleteTag(httpClient *http.Client, baseRepo ghrepo.Interface, tagName string) error { path := fmt.Sprintf("repos/%s/%s/git/refs/tags/%s", baseRepo.RepoOwner(), baseRepo.RepoName(), tagName) url := ghinstance.RESTPrefix(baseRepo.RepoHost()) + path - + req, err := http.NewRequest("DELETE", url, nil) if err != nil { return err @@ -152,4 +152,3 @@ func deleteTag(httpClient *http.Client, baseRepo ghrepo.Interface, tagName strin } return nil } - diff --git a/pkg/cmd/release/delete/delete_test.go b/pkg/cmd/release/delete/delete_test.go index f03d730cc..34ebb03db 100644 --- a/pkg/cmd/release/delete/delete_test.go +++ b/pkg/cmd/release/delete/delete_test.go @@ -31,7 +31,7 @@ func Test_NewCmdDelete(t *testing.T) { want: DeleteOptions{ TagName: "v1.2.3", SkipConfirm: false, - CleanupTag: false, + CleanupTag: false, }, }, { @@ -41,7 +41,7 @@ func Test_NewCmdDelete(t *testing.T) { want: DeleteOptions{ TagName: "v1.2.3", SkipConfirm: true, - CleanupTag: false, + CleanupTag: false, }, }, { @@ -51,7 +51,7 @@ func Test_NewCmdDelete(t *testing.T) { want: DeleteOptions{ TagName: "v1.2.3", SkipConfirm: false, - CleanupTag: true, + CleanupTag: true, }, }, { @@ -95,7 +95,6 @@ func Test_NewCmdDelete(t *testing.T) { require.NoError(t, err) } - assert.Equal(t, tt.want.TagName, opts.TagName) assert.Equal(t, tt.want.SkipConfirm, opts.SkipConfirm) assert.Equal(t, tt.want.CleanupTag, opts.CleanupTag) @@ -118,7 +117,7 @@ func Test_deleteRun(t *testing.T) { opts: DeleteOptions{ TagName: "v1.2.3", SkipConfirm: true, - CleanupTag: false, + CleanupTag: false, }, wantStdout: ``, wantStderr: heredoc.Doc(` @@ -132,7 +131,7 @@ func Test_deleteRun(t *testing.T) { opts: DeleteOptions{ TagName: "v1.2.3", SkipConfirm: false, - CleanupTag: false, + CleanupTag: false, }, wantStdout: ``, wantStderr: ``, @@ -143,11 +142,11 @@ func Test_deleteRun(t *testing.T) { opts: DeleteOptions{ TagName: "v1.2.3", SkipConfirm: true, - CleanupTag: true, + CleanupTag: true, }, wantStdout: ``, wantStderr: heredoc.Doc(` - ✓ Deleted release v1.2.3 and cleanup the tag + ✓ Deleted release and tag v1.2.3 `), }, { @@ -156,7 +155,7 @@ func Test_deleteRun(t *testing.T) { opts: DeleteOptions{ TagName: "v1.2.3", SkipConfirm: false, - CleanupTag: true, + CleanupTag: true, }, wantStdout: ``, wantStderr: ``, @@ -179,7 +178,6 @@ func Test_deleteRun(t *testing.T) { fakeHTTP.Register(httpmock.REST("DELETE", "repos/OWNER/REPO/releases/23456"), httpmock.StatusStringResponse(204, "")) fakeHTTP.Register(httpmock.REST("DELETE", "repos/OWNER/REPO/git/refs/tags/v1.2.3"), httpmock.StatusStringResponse(204, "")) - tt.opts.IO = ios tt.opts.HttpClient = func() (*http.Client, error) { return &http.Client{Transport: fakeHTTP}, nil