forgejo/models/repo
Giteabot 0af6542a34
Add unit test for repository collaboration (#25640) (#25658)
Backport #25640 by @earl-warren

- Add a few extra test cases and test functions for the collaboration
model to get everything covered by tests (except for error handling, as
we cannot suddenly mock errors from the database).

```
-> % go tool cover -func=coverage.out | grep "code.gitea.io/gitea/models/repo/collaboration.go"
```

Before:
```
code.gitea.io/gitea/models/repo/collaboration.go:28:                            init                                            100.0%
code.gitea.io/gitea/models/repo/collaboration.go:39:                            GetCollaborators                                61.5%
code.gitea.io/gitea/models/repo/collaboration.go:65:                            CountCollaborators                              0.0%
code.gitea.io/gitea/models/repo/collaboration.go:70:                            GetCollaboration                                0.0%
code.gitea.io/gitea/models/repo/collaboration.go:83:                            IsCollaborator                                  100.0%
code.gitea.io/gitea/models/repo/collaboration.go:87:                            getCollaborations                               42.9%
code.gitea.io/gitea/models/repo/collaboration.go:102:                           ChangeCollaborationAccessMode                   77.8%
code.gitea.io/gitea/models/repo/collaboration.go:141:                           IsOwnerMemberCollaborator                       0.0%
```

After:
```
code.gitea.io/gitea/models/repo/collaboration.go:28:                            init                                            100.0%
code.gitea.io/gitea/models/repo/collaboration.go:39:                            GetCollaborators                                61.5%
code.gitea.io/gitea/models/repo/collaboration.go:65:                            CountCollaborators                              100.0%
code.gitea.io/gitea/models/repo/collaboration.go:70:                            GetCollaboration                                100.0%
code.gitea.io/gitea/models/repo/collaboration.go:83:                            IsCollaborator                                  100.0%
code.gitea.io/gitea/models/repo/collaboration.go:87:                            getCollaborations                               100.0%
code.gitea.io/gitea/models/repo/collaboration.go:102:                           ChangeCollaborationAccessMode                   83.3%
code.gitea.io/gitea/models/repo/collaboration.go:141:                           IsOwnerMemberCollaborator                       87.5%
```

Co-authored-by: Gusted <postmaster@gusted.xyz>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/825

Co-authored-by: Earl Warren <109468362+earl-warren@users.noreply.github.com>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: silverwind <me@silverwind.io>
2023-07-04 06:29:43 +00:00
..
archiver.go Display when a repo was archived (#22664) 2023-04-26 10:46:26 -04:00
attachment.go Make Release Download URLs predictable (#23891) 2023-04-12 17:05:23 +08:00
attachment_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
avatar.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
collaboration.go Always reuse transaction (#22362) 2023-01-08 09:34:58 +08:00
collaboration_test.go Add unit test for repository collaboration (#25640) (#25658) 2023-07-04 06:29:43 +00:00
fork.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
fork_test.go refactor some functions to support ctx as first parameter (#21878) 2022-12-03 10:48:26 +08:00
git.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue.go Rename almost all Ctx functions (#22071) 2022-12-10 10:46:31 +08:00
language_stats.go Round language stats percentage using largest remainder (#22026) 2022-12-08 10:47:47 +08:00
main_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
mirror.go Use ErrInvalidArgument in packages (#22268) 2022-12-31 12:49:37 +01:00
pushmirror.go Use ErrInvalidArgument in packages (#22268) 2022-12-31 12:49:37 +01:00
pushmirror_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
redirect.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
redirect_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
release.go fix: release page for empty or non-existing target (#24470) 2023-05-10 11:43:55 +08:00
repo.go Rewrite logger system (#24726) 2023-05-21 22:35:11 +00:00
repo_indexer.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo_list.go Use context for RepositoryList.LoadAttributes (#23435) 2023-03-13 11:31:41 +00:00
repo_list_test.go fix calReleaseNumCommitsBehind (#24148) 2023-04-18 21:11:17 +02:00
repo_test.go Set repository link based on the url in package.json for npm packages (#20379) 2023-03-28 13:55:03 -04:00
repo_unit.go Pull Requests: setting to allow edits by maintainers by default, tweak UI (#22862) 2023-02-13 14:09:52 +08:00
search.go Split "modules/context.go" to separate files (#24569) 2023-05-08 17:36:54 +08:00
star.go Remove stars when repo goes private (#19904) 2023-06-05 13:25:43 +00:00
star_test.go Remove stars when repo goes private (#19904) 2023-06-05 13:25:43 +00:00
topic.go Fix topics deleted via API not being deleted in org page (#24825) 2023-05-21 11:03:20 +02:00
topic_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
update.go Fix unclear IsRepositoryExist logic (#24374) 2023-04-28 14:14:26 -04:00
upload.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
user_repo.go Refactor authors dropdown (send get request from frontend to avoid long wait time) (#23890) 2023-04-07 08:11:02 +08:00
user_repo_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
watch.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
watch_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
wiki.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
wiki_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00