added fix for empty body in pr preview

This commit is contained in:
Anowar Islam 2020-02-13 01:43:51 -08:00
parent c27d7807a0
commit 8f9574be35
No known key found for this signature in database
GPG key ID: 57604852514350C3
3 changed files with 85 additions and 3 deletions

View file

@ -308,9 +308,11 @@ func printPrPreview(out io.Writer, pr *api.PullRequest) {
pr.BaseRefName,
pr.HeadRefName,
)))
fmt.Fprintln(out)
fmt.Fprintln(out, utils.RenderMarkdown(pr.Body))
fmt.Fprintln(out)
if pr.Body != "" {
fmt.Fprintln(out)
fmt.Fprintln(out, utils.RenderMarkdown(pr.Body))
fmt.Fprintln(out)
}
fmt.Fprintf(out, utils.Gray("View this pull request on GitHub: %s\n"), pr.URL)
}

View file

@ -313,6 +313,40 @@ func TestPRView_previewCurrentBranch(t *testing.T) {
}
}
func TestPRView_previewCurrentBranchWithEmptyBody(t *testing.T) {
initBlankContext("OWNER/REPO", "blueberries")
http := initFakeHTTP()
http.StubRepoResponse("OWNER", "REPO")
jsonFile, _ := os.Open("../test/fixtures/prView_EmptyBody.json")
defer jsonFile.Close()
http.StubResponse(200, jsonFile)
restoreCmd := utils.SetPrepareCmd(func(cmd *exec.Cmd) utils.Runnable {
return &outputStub{}
})
defer restoreCmd()
output, err := RunCommand(prViewCmd, "pr view -p")
if err != nil {
t.Errorf("error running command `pr view`: %v", err)
}
eq(t, output.Stderr(), "")
expectedLines := []*regexp.Regexp{
regexp.MustCompile(`Blueberries are a good fruit`),
regexp.MustCompile(`nobody wants to merge 8 commits into master from blueberries`),
regexp.MustCompile(`View this pull request on GitHub: https://github.com/OWNER/REPO/pull/10`),
}
for _, r := range expectedLines {
if !r.MatchString(output.String()) {
t.Errorf("output did not match regexp /%s/\n> output\n%s\n", r, output)
return
}
}
}
func TestPRView_currentBranch(t *testing.T) {
initBlankContext("OWNER/REPO", "blueberries")
http := initFakeHTTP()

46
test/fixtures/prView_EmptyBody.json vendored Normal file
View file

@ -0,0 +1,46 @@
{
"data": {
"repository": {
"pullRequests": {
"nodes": [
{
"number": 12,
"title": "Blueberries are from a fork",
"body": "yeah",
"url": "https://github.com/OWNER/REPO/pull/12",
"headRefName": "blueberries",
"baseRefName": "master",
"headRepositoryOwner": {
"login": "hubot"
},
"commits": {
"totalCount": 12
},
"author": {
"login": "nobody"
},
"isCrossRepository": true
},
{
"number": 10,
"title": "Blueberries are a good fruit",
"body": "",
"url": "https://github.com/OWNER/REPO/pull/10",
"baseRefName": "master",
"headRefName": "blueberries",
"author": {
"login": "nobody"
},
"headRepositoryOwner": {
"login": "OWNER"
},
"commits": {
"totalCount": 8
},
"isCrossRepository": false
}
]
}
}
}
}