diff options
author | Ian Lewis <ianlewis@google.com> | 2020-08-14 16:21:29 -0700 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2020-08-14 16:23:34 -0700 |
commit | 3f523b3bbcf5ef7f37bb247bd4c5727711c70ba9 (patch) | |
tree | 0908ef59b37ed7d25a08f4a1810a91739da84332 /tools/issue_reviver/github/github_test.go | |
parent | af433e159dbf07b084c0f05e65ec646c056033a7 (diff) |
Handle URLs better in issue reviver
- Handle urls ending in /
- Add some url parsing tests
PiperOrigin-RevId: 326750183
Diffstat (limited to 'tools/issue_reviver/github/github_test.go')
-rw-r--r-- | tools/issue_reviver/github/github_test.go | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/tools/issue_reviver/github/github_test.go b/tools/issue_reviver/github/github_test.go new file mode 100644 index 000000000..a78b230ef --- /dev/null +++ b/tools/issue_reviver/github/github_test.go @@ -0,0 +1,55 @@ +// Copyright 2020 The gVisor Authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package github + +import ( + "testing" +) + +func TestParseIssueNo(t *testing.T) { + testCases := []struct { + issue string + expectErr bool + expected int + }{ + { + issue: "gvisor.dev/issue/123", + expected: 123, + }, + { + issue: "gvisor.dev/issue/123/", + expected: 123, + }, + { + issue: "not a url", + expected: 0, + }, + { + issue: "gvisor.dev/issue//", + expectErr: true, + }, + } + + for _, tc := range testCases { + t.Run(tc.issue, func(t *testing.T) { + id, err := parseIssueNo(tc.issue) + if err != nil && !tc.expectErr { + t.Errorf("got error: %v", err) + } else if tc.expected != id { + t.Errorf("got: %v, want: %v", id, tc.expected) + } + }) + } +} |