MCPcopy Create free account
hub / github.com/cli/cli / mockReviewerResponseForRepoWithCopilot

Function mockReviewerResponseForRepoWithCopilot

api/queries_pr_test.go:387–417  ·  view source on GitHub ↗

mockReviewerResponseForRepoWithCopilot generates a GraphQL response for SuggestedReviewerActorsForRepo tests. If copilotAvailable is true, includes Copilot in the first open PR's suggested reviewers.

(collabs, teams, totalCollabs, totalTeams int, copilotAvailable bool)

Source from the content-addressed store, hash-verified

385// mockReviewerResponseForRepoWithCopilot generates a GraphQL response for SuggestedReviewerActorsForRepo tests.
386// If copilotAvailable is true, includes Copilot in the first open PR's suggested reviewers.
387func mockReviewerResponseForRepoWithCopilot(collabs, teams, totalCollabs, totalTeams int, copilotAvailable bool) string {
388 var collabNodes, teamNodes []string
389
390 for i := 1; i <= collabs; i++ {
391 collabNodes = append(collabNodes,
392 fmt.Sprintf(`{"login": "c%d", "name": "C%d"}`, i, i))
393 }
394 for i := 1; i <= teams; i++ {
395 teamNodes = append(teamNodes,
396 fmt.Sprintf(`{"slug": "team%d"}`, i))
397 }
398
399 pullRequestsJSON := `"pullRequests": {"nodes": []}`
400 if copilotAvailable {
401 pullRequestsJSON = `"pullRequests": {"nodes": [{"suggestedReviewerActors": {"nodes": [{"reviewer": {"__typename": "Bot", "login": "copilot-pull-request-reviewer"}}]}}]}`
402 }
403
404 return fmt.Sprintf(`{
405 "data": {
406 "viewer": {"login": "testuser"},
407 "repository": {
408 %s,
409 "owner": {"__typename": "Organization", "teams": {"nodes": [%s]}, "teamsTotalCount": {"totalCount": %d}},
410 "collaborators": {"nodes": [%s]},
411 "collaboratorsTotalCount": {"totalCount": %d}
412 }
413 }
414 }`, pullRequestsJSON,
415 strings.Join(teamNodes, ","), totalTeams,
416 strings.Join(collabNodes, ","), totalCollabs)
417}
418
419func TestSuggestedReviewerActorsForRepo(t *testing.T) {
420 tests := []struct {

Callers 2

Calls 1

JoinMethod · 0.80

Tested by

no test coverage detected