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

Function TestPatchGroupSyncConfig

enterprise/coderd/idpsync_test.go:143–221  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

141}
142
143func TestPatchGroupSyncConfig(t *testing.T) {
144 t.Parallel()
145
146 t.Run("OK", func(t *testing.T) {
147 t.Parallel()
148
149 owner, user := coderdenttest.New(t, &coderdenttest.Options{
150 LicenseOptions: &coderdenttest.LicenseOptions{
151 Features: license.Features{
152 codersdk.FeatureCustomRoles: 1,
153 codersdk.FeatureMultipleOrganizations: 1,
154 },
155 },
156 })
157
158 orgID := user.OrganizationID
159 orgAdmin, _ := coderdtest.CreateAnotherUser(t, owner, orgID, rbac.ScopedRoleOrgAdmin(user.OrganizationID))
160
161 mapping := map[string][]uuid.UUID{"wibble": {uuid.New()}}
162
163 ctx := testutil.Context(t, testutil.WaitShort)
164 _, err := orgAdmin.PatchGroupIDPSyncSettings(ctx, orgID.String(), codersdk.GroupSyncSettings{
165 Field: "wibble",
166 RegexFilter: regexp.MustCompile("wib{2,}le"),
167 AutoCreateMissing: false,
168 Mapping: mapping,
169 })
170
171 require.NoError(t, err)
172
173 fetchedSettings, err := orgAdmin.GroupIDPSyncSettings(ctx, orgID.String())
174 require.NoError(t, err)
175 require.Equal(t, "wibble", fetchedSettings.Field)
176 require.Equal(t, "wib{2,}le", fetchedSettings.RegexFilter.String())
177 require.Equal(t, false, fetchedSettings.AutoCreateMissing)
178 require.Equal(t, mapping, fetchedSettings.Mapping)
179
180 ctx = testutil.Context(t, testutil.WaitShort)
181 settings, err := orgAdmin.PatchGroupIDPSyncConfig(ctx, orgID.String(), codersdk.PatchGroupIDPSyncConfigRequest{
182 Field: "wobble",
183 RegexFilter: regexp.MustCompile("wob{2,}le"),
184 AutoCreateMissing: true,
185 })
186
187 require.NoError(t, err)
188 require.Equal(t, "wobble", settings.Field)
189 require.Equal(t, "wob{2,}le", settings.RegexFilter.String())
190 require.Equal(t, true, settings.AutoCreateMissing)
191 require.Equal(t, mapping, settings.Mapping)
192
193 fetchedSettings, err = orgAdmin.GroupIDPSyncSettings(ctx, orgID.String())
194 require.NoError(t, err)
195 require.Equal(t, "wobble", fetchedSettings.Field)
196 require.Equal(t, "wob{2,}le", fetchedSettings.RegexFilter.String())
197 require.Equal(t, true, fetchedSettings.AutoCreateMissing)
198 require.Equal(t, mapping, fetchedSettings.Mapping)
199 })
200

Callers

nothing calls this directly

Calls 13

StatusCodeMethod · 0.95
NewFunction · 0.92
CreateAnotherUserFunction · 0.92
ScopedRoleOrgAdminFunction · 0.92
ContextFunction · 0.92
MustCompileMethod · 0.80
GroupIDPSyncSettingsMethod · 0.80
RunMethod · 0.65
NewMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected