MCPcopy Index your code
hub / github.com/coder/coder / TestPatchGroup

Function TestPatchGroup

enterprise/coderd/groups_test.go:152–602  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

150}
151
152func TestPatchGroup(t *testing.T) {
153 t.Parallel()
154
155 t.Run("OK", func(t *testing.T) {
156 t.Parallel()
157
158 client, user := coderdenttest.New(t, &coderdenttest.Options{LicenseOptions: &coderdenttest.LicenseOptions{
159 Features: license.Features{
160 codersdk.FeatureTemplateRBAC: 1,
161 },
162 }})
163 userAdminClient, _ := coderdtest.CreateAnotherUser(t, client, user.OrganizationID, rbac.RoleUserAdmin())
164 const displayName = "foobar"
165 ctx := testutil.Context(t, testutil.WaitLong)
166 group, err := userAdminClient.CreateGroup(ctx, user.OrganizationID, codersdk.CreateGroupRequest{
167 Name: "ff7dcee2-e7c4-4bc4-a9e4-84870770e4c5", // GUID should fit.
168 AvatarURL: "https://example.com",
169 QuotaAllowance: 10,
170 DisplayName: "",
171 })
172 require.NoError(t, err)
173 require.Equal(t, 10, group.QuotaAllowance)
174
175 group, err = userAdminClient.PatchGroup(ctx, group.ID, codersdk.PatchGroupRequest{
176 Name: "ddd502d2-2984-4724-b5bf-1109a4d7462d", // GUID should fit.
177 AvatarURL: ptr.Ref("https://google.com"),
178 QuotaAllowance: ptr.Ref(20),
179 DisplayName: ptr.Ref(displayName),
180 })
181 require.NoError(t, err)
182 require.Equal(t, displayName, group.DisplayName)
183 require.Equal(t, "ddd502d2-2984-4724-b5bf-1109a4d7462d", group.Name)
184 require.Equal(t, "https://google.com", group.AvatarURL)
185 require.Equal(t, 20, group.QuotaAllowance)
186 })
187
188 t.Run("DisplayNameUnchanged", func(t *testing.T) {
189 t.Parallel()
190
191 client, user := coderdenttest.New(t, &coderdenttest.Options{LicenseOptions: &coderdenttest.LicenseOptions{
192 Features: license.Features{
193 codersdk.FeatureTemplateRBAC: 1,
194 },
195 }})
196 userAdminClient, _ := coderdtest.CreateAnotherUser(t, client, user.OrganizationID, rbac.RoleUserAdmin())
197 const displayName = "foobar"
198 ctx := testutil.Context(t, testutil.WaitLong)
199 group, err := userAdminClient.CreateGroup(ctx, user.OrganizationID, codersdk.CreateGroupRequest{
200 Name: "hi",
201 AvatarURL: "https://example.com",
202 QuotaAllowance: 10,
203 DisplayName: displayName,
204 })
205 require.NoError(t, err)
206 require.Equal(t, 10, group.QuotaAllowance)
207
208 group, err = userAdminClient.PatchGroup(ctx, group.ID, codersdk.PatchGroupRequest{
209 Name: "bye",

Callers

nothing calls this directly

Calls 15

NewFunction · 0.92
CreateAnotherUserFunction · 0.92
RoleUserAdminFunction · 0.92
ContextFunction · 0.92
RefFunction · 0.92
NewMockFunction · 0.92
AsErrorFunction · 0.92
CreateGroupMethod · 0.80
PatchGroupMethod · 0.80
RunMethod · 0.65
EqualMethod · 0.45
StringMethod · 0.45

Tested by

no test coverage detected