()
| 28 | } |
| 29 | |
| 30 | func newTestConfig() *Config { //nolint:funlen |
| 31 | c := NewConfig(memfs.New()) |
| 32 | |
| 33 | // Define some basic users |
| 34 | c.Users["an-admin"] = models.NewAdminConfigUser() |
| 35 | c.Users["an-admin"].IsAdmin = true |
| 36 | c.Users["an-admin"].Keys = []models.PublicKey{ |
| 37 | mustParsePK("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILQGpcX2owFW6hdTWHa/CzbTwhUJlmI8gKAgnp/c0NK2 an-admin"), |
| 38 | } |
| 39 | |
| 40 | c.Users["non-admin"] = models.NewAdminConfigUser() |
| 41 | c.Users["non-admin"].Repos["test-repo"] = newTestRepoConfig() |
| 42 | |
| 43 | // Org-level permissions |
| 44 | c.Users["org-admin"] = models.NewAdminConfigUser() |
| 45 | c.Users["org-write"] = models.NewAdminConfigUser() |
| 46 | c.Users["org-read"] = models.NewAdminConfigUser() |
| 47 | |
| 48 | // Repo-level permissions |
| 49 | c.Users["read-user"] = models.NewAdminConfigUser() |
| 50 | c.Users["write-user"] = models.NewAdminConfigUser() |
| 51 | c.Users["nothing-user"] = models.NewAdminConfigUser() |
| 52 | |
| 53 | c.Users["disabled"] = models.NewAdminConfigUser() |
| 54 | c.Users["disabled"].Disabled = true |
| 55 | c.Users["disabled"].Keys = []models.PublicKey{ |
| 56 | mustParsePK("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBx4DYr9m+EnG0tgFsUIZqrDP7pa+vpVXJJ6/PE9J7Ll disabled"), |
| 57 | } |
| 58 | |
| 59 | // Basic group |
| 60 | c.Groups["admins"] = []string{"an-admin"} |
| 61 | c.Groups["nested-admins"] = []string{"$admins"} |
| 62 | |
| 63 | // Group loop |
| 64 | c.Groups["loop"] = []string{"$loop1"} |
| 65 | c.Groups["loop1"] = []string{"$loop2"} |
| 66 | c.Groups["loop2"] = []string{"$loop1"} |
| 67 | |
| 68 | // Basic org |
| 69 | c.Orgs["an-org"] = models.NewOrgConfig() |
| 70 | c.Orgs["an-org"].Admin = []string{"org-admin"} |
| 71 | c.Orgs["an-org"].Write = []string{"org-write"} |
| 72 | c.Orgs["an-org"].Read = []string{"org-read"} |
| 73 | c.Orgs["an-org"].Repos["test-repo"] = newTestRepoConfig() |
| 74 | |
| 75 | c.Repos["test-repo"] = newTestRepoConfig() |
| 76 | |
| 77 | c.Invites["valid-invite"] = "an-admin" |
| 78 | c.Invites["user-missing"] = "invalid-user" |
| 79 | c.Invites["user-disabled"] = "disabled" |
| 80 | |
| 81 | // Force all settings repos to "on" |
| 82 | c.Options.UserConfigRepos = true |
| 83 | c.Options.OrgConfig = true |
| 84 | c.Options.OrgConfigRepos = true |
| 85 | |
| 86 | c.flatten() |
| 87 |
no test coverage detected