github.com/quickfeed/quickfeed@v0.0.0-20240507093252-ed8ca812a09c/qf/pull_request_test.go (about) 1 package qf_test 2 3 import ( 4 "testing" 5 6 "github.com/quickfeed/quickfeed/qf" 7 ) 8 9 func TestIsValid(t *testing.T) { 10 tests := map[string]struct { 11 pr *qf.PullRequest 12 want bool 13 }{ 14 "Valid": {pr: &qf.PullRequest{ScmRepositoryID: 1, TaskID: 1, IssueID: 1, UserID: 1, SourceBranch: "A", Number: 1}, want: true}, 15 "Invalid ScmRepositoryID": {pr: &qf.PullRequest{ScmRepositoryID: 0, TaskID: 1, IssueID: 1, UserID: 1, SourceBranch: "A", Number: 1}, want: false}, 16 "Invalid TaskID": {pr: &qf.PullRequest{ScmRepositoryID: 1, TaskID: 0, IssueID: 1, UserID: 1, SourceBranch: "A", Number: 1}, want: false}, 17 "Invalid IssueID": {pr: &qf.PullRequest{ScmRepositoryID: 1, TaskID: 1, IssueID: 0, UserID: 1, SourceBranch: "A", Number: 1}, want: false}, 18 "Invalid UserID": {pr: &qf.PullRequest{ScmRepositoryID: 1, TaskID: 1, IssueID: 1, UserID: 0, SourceBranch: "A", Number: 1}, want: false}, 19 "Invalid BranchName": {pr: &qf.PullRequest{ScmRepositoryID: 1, TaskID: 1, IssueID: 1, UserID: 1, SourceBranch: "", Number: 1}, want: false}, 20 "Invalid Number": {pr: &qf.PullRequest{ScmRepositoryID: 1, TaskID: 1, IssueID: 1, UserID: 1, SourceBranch: "A", Number: 0}, want: false}, 21 } 22 for name, tt := range tests { 23 t.Run(name, func(t *testing.T) { 24 got := tt.pr.Valid() 25 if tt.want != got { 26 t.Errorf("IsValid() = %t, expected %t\npr: %v", got, tt.want, tt.pr) 27 } 28 }) 29 } 30 } 31 32 func TestHasFeedbackComment(t *testing.T) { 33 tests := map[string]struct { 34 pr *qf.PullRequest 35 want bool 36 }{ 37 "Comment": {pr: &qf.PullRequest{ScmCommentID: 1}, want: true}, 38 "No comment": {pr: &qf.PullRequest{ScmCommentID: 0}, want: false}, 39 } 40 for name, tt := range tests { 41 t.Run(name, func(t *testing.T) { 42 got := tt.pr.HasFeedbackComment() 43 if tt.want != got { 44 t.Errorf("HasFeedbackComment() = %t, expected %t\npr: %v", got, tt.want, tt.pr) 45 } 46 }) 47 } 48 }