[monorail] Cleanup
Fix go vet warnings and remove TODOs that will, realistically, never get
done.
Change-Id: I7b3db41f96519c8e4bd343af6c7de1fa53c37dbf
Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/infra/+/469979
Commit-Queue: Oliver Newman <olivernewman@google.com>
Fuchsia-Auto-Submit: Oliver Newman <olivernewman@google.com>
Reviewed-by: Anthony Fandrianto <atyfto@google.com>
diff --git a/monorail/monorail.go b/monorail/monorail.go
index e701d97..48b0ff7 100644
--- a/monorail/monorail.go
+++ b/monorail/monorail.go
@@ -22,8 +22,8 @@
)
const (
- // monorailBaseUrlTemplate is the template for building the Monorail url.
- monorailBaseUrlTemplate = "https://monorail-prod.appspot.com/_ah/api/monorail/v1/projects/%s/issues"
+ // monorailBaseURLTemplate is the template for building the Monorail url.
+ monorailBaseURLTemplate = "https://monorail-prod.appspot.com/_ah/api/monorail/v1/projects/%s/issues"
// monorailIssueReferenceTemplate is the template for the user-facing Monorail instance url.
// For testing, use the staging server at https://bugs-staging.fuchsia.dev.
monorailIssueReferenceTemplate = "https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=%v"
@@ -65,7 +65,7 @@
type NewIssueResponse struct {
Author IssuePerson `json:"author"`
Components []string `json:"components"`
- Id int64 `json:"id"`
+ ID int64 `json:"id"`
Labels []string `json:"labels"`
Published string `json:"published"`
Status string `json:"status"`
@@ -98,7 +98,7 @@
type NewCommentResponse struct {
Content string `json:"content"`
- Id int64 `json:"id"`
+ ID int64 `json:"id"`
}
type UTCTime time.Time
@@ -188,7 +188,7 @@
return &IssueTracker{
client: client,
project: project,
- url: fmt.Sprintf(monorailBaseUrlTemplate, project),
+ url: fmt.Sprintf(monorailBaseURLTemplate, project),
}
}
@@ -202,14 +202,12 @@
}
// FromQuery returns Monorail issues matching a given search string.
-// TODO(kylecameron): Update this with proper pagination.
func (m *IssueTracker) FromQuery(issueQuery IssueQuery, optionalQueryParams OptionalQueryParams) ([]Issue, error) {
queryLink := buildQueryLink(m.url, issueQuery, optionalQueryParams)
return getIssues(m.client, queryLink)
}
// IssueComments returns comments on a Monorail issue.
-// TODO(kylecameron): Update this with proper pagination.
func (m *IssueTracker) IssueComments(id int64) ([]IssueComment, error) {
u := fmt.Sprintf("%s/%d/comments?maxResults=10000", m.url, id)
return getComments(m.client, u)
@@ -226,7 +224,7 @@
// buildQueryLink combines default and optional query parameters into a usable url
// for Monorail's RESTful API.
-func buildQueryLink(baseUrl string, issueQuery IssueQuery, optionalQueryParams OptionalQueryParams) string {
+func buildQueryLink(baseURL string, issueQuery IssueQuery, optionalQueryParams OptionalQueryParams) string {
query := url.Values{}
// add required params
@@ -244,7 +242,7 @@
query.Add(k, v)
}
- return fmt.Sprintf("%s?%s", baseUrl, query.Encode())
+ return fmt.Sprintf("%s?%s", baseURL, query.Encode())
}
func getComments(client *http.Client, u string) ([]IssueComment, error) {
@@ -284,7 +282,7 @@
if err := json.Unmarshal(resp, &newIssueResponse); err != nil {
return errors.Wrap(err, "unable to unmarshal new Monorail issue response")
}
- issueURL := fmt.Sprintf(monorailIssueReferenceTemplate, newIssueResponse.Id)
+ issueURL := fmt.Sprintf(monorailIssueReferenceTemplate, newIssueResponse.ID)
log.Printf("Issue filed!\nSummary:\n%s\nReference: %s\n", newIssueResponse.Summary, issueURL)
return nil
}
diff --git a/monorail/monorail_test.go b/monorail/monorail_test.go
index ac06259..d9b5283 100644
--- a/monorail/monorail_test.go
+++ b/monorail/monorail_test.go
@@ -13,7 +13,7 @@
func TestBuildQueryLink(t *testing.T) {
testCases := []struct {
name string
- baseUrl string
+ baseURL string
issueQuery IssueQuery
optionalQueryParams OptionalQueryParams
}{
@@ -58,12 +58,12 @@
}
for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
- got := buildQueryLink(tc.baseUrl, tc.issueQuery, tc.optionalQueryParams)
- if wantedPrefix := tc.baseUrl; !strings.HasPrefix(got, wantedPrefix) {
- t.Errorf("buildQueryLink(%s, %v, %v): got %s, but wanted to have prefix %s", tc.baseUrl, tc.issueQuery, tc.optionalQueryParams, got, wantedPrefix)
+ got := buildQueryLink(tc.baseURL, tc.issueQuery, tc.optionalQueryParams)
+ if wantedPrefix := tc.baseURL; !strings.HasPrefix(got, wantedPrefix) {
+ t.Errorf("buildQueryLink(%s, %v, %v): got %s, but wanted to have prefix %s", tc.baseURL, tc.issueQuery, tc.optionalQueryParams, got, wantedPrefix)
}
if wantedSuffix := url.QueryEscape(tc.issueQuery.SearchString); !strings.HasSuffix(got, wantedSuffix) {
- t.Errorf("buildQueryLink(%s, %v, %v): got %s, but wanted to have suffix %s", tc.baseUrl, tc.issueQuery, tc.optionalQueryParams, got, wantedSuffix)
+ t.Errorf("buildQueryLink(%s, %v, %v): got %s, but wanted to have suffix %s", tc.baseURL, tc.issueQuery, tc.optionalQueryParams, got, wantedSuffix)
}
})