MCPcopy Create free account
hub / github.com/gogs/gogs / permsSetRepoPerms

Function permsSetRepoPerms

internal/database/permissions_test.go:240–302  ·  view source on GitHub ↗
(t *testing.T, ctx context.Context, s *PermissionsStore)

Source from the content-addressed store, hash-verified

238}
239
240func permsSetRepoPerms(t *testing.T, ctx context.Context, s *PermissionsStore) {
241 for _, update := range []struct {
242 repoID int64
243 accessMap map[int64]AccessMode
244 }{
245 {
246 repoID: 1,
247 accessMap: map[int64]AccessMode{
248 1: AccessModeWrite,
249 2: AccessModeWrite,
250 3: AccessModeAdmin,
251 4: AccessModeWrite,
252 },
253 },
254 {
255 repoID: 2,
256 accessMap: map[int64]AccessMode{
257 1: AccessModeWrite,
258 2: AccessModeRead,
259 4: AccessModeWrite,
260 5: AccessModeWrite,
261 },
262 },
263 {
264 repoID: 1,
265 accessMap: map[int64]AccessMode{
266 2: AccessModeWrite,
267 3: AccessModeAdmin,
268 },
269 },
270 {
271 repoID: 2,
272 accessMap: map[int64]AccessMode{
273 1: AccessModeWrite,
274 2: AccessModeRead,
275 5: AccessModeWrite,
276 },
277 },
278 } {
279 err := s.SetRepoPerms(ctx, update.repoID, update.accessMap)
280 if err != nil {
281 t.Fatal(err)
282 }
283 }
284
285 var accesses []*Access
286 err := s.db.Order("user_id, repo_id").Find(&accesses).Error
287 require.NoError(t, err)
288
289 // Ignore ID fields
290 for _, a := range accesses {
291 a.ID = 0
292 }
293
294 wantAccesses := []*Access{
295 {UserID: 1, RepoID: 2, Mode: AccessModeWrite},
296 {UserID: 2, RepoID: 1, Mode: AccessModeWrite},
297 {UserID: 2, RepoID: 2, Mode: AccessModeRead},

Callers

nothing calls this directly

Calls 2

SetRepoPermsMethod · 0.80
FindMethod · 0.65

Tested by

no test coverage detected