Skip to content

Commit 3cfff72

Browse files
committed
test
1 parent 4979574 commit 3cfff72

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

enterprise/coderd/workspaces_test.go

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -260,8 +260,9 @@ func TestCreateUserWorkspace(t *testing.T) {
260260
},
261261
LicenseOptions: &coderdenttest.LicenseOptions{
262262
Features: license.Features{
263-
codersdk.FeatureCustomRoles: 1,
264-
codersdk.FeatureTemplateRBAC: 1,
263+
codersdk.FeatureCustomRoles: 1,
264+
codersdk.FeatureTemplateRBAC: 1,
265+
codersdk.FeatureMultipleOrganizations: 1,
265266
},
266267
},
267268
})
@@ -278,29 +279,34 @@ func TestCreateUserWorkspace(t *testing.T) {
278279
})
279280
require.NoError(t, err)
280281

281-
// use admin for setting up test
282-
admin, adminID := coderdtest.CreateAnotherUser(t, owner, first.OrganizationID, rbac.RoleTemplateAdmin())
282+
secondOrg := coderdenttest.CreateOrganization(t, owner, coderdenttest.CreateOrganizationOptions{})
283+
284+
// user to make the workspace for, **note** the user is not a member of the first org.
285+
// This is strange, but technically valid. The creator can create a workspace for
286+
// this user in this org, even though the user cannot access the workspace.
287+
_, forUser := coderdtest.CreateAnotherUser(t, owner, secondOrg.ID)
288+
289+
// Need an admin to make the template
290+
admin, _ := coderdtest.CreateAnotherUser(t, owner, first.OrganizationID, rbac.ScopedRoleOrgTemplateAdmin(first.OrganizationID))
283291

284292
// try the test action with this user & custom role
285293
creator, _ := coderdtest.CreateAnotherUser(t, owner, first.OrganizationID, rbac.RoleMember(), rbac.RoleIdentifier{
286294
Name: r.Name,
287295
OrganizationID: first.OrganizationID,
288296
})
289297

290-
version := coderdtest.CreateTemplateVersion(t, admin, first.OrganizationID, nil)
291-
coderdtest.AwaitTemplateVersionJobCompleted(t, admin, version.ID)
292-
template := coderdtest.CreateTemplate(t, admin, first.OrganizationID, version.ID)
298+
template, _ := coderdtest.DynamicParameterTemplate(t, admin, first.OrganizationID, coderdtest.DynamicParameterTemplateParams{})
293299

294300
ctx = testutil.Context(t, testutil.WaitLong*1000) // Reset the context to avoid timeouts.
295301

296-
wrk, err := creator.CreateUserWorkspace(ctx, adminID.ID.String(), codersdk.CreateWorkspaceRequest{
302+
wrk, err := creator.CreateUserWorkspace(ctx, forUser.ID.String(), codersdk.CreateWorkspaceRequest{
297303
TemplateID: template.ID,
298304
Name: "workspace",
299305
})
300306
require.NoError(t, err)
301-
coderdtest.AwaitWorkspaceBuildJobCompleted(t, admin, wrk.LatestBuild.ID)
307+
coderdtest.AwaitWorkspaceBuildJobCompleted(t, creator, wrk.LatestBuild.ID)
302308

303-
_, err = creator.WorkspaceByOwnerAndName(ctx, adminID.Username, wrk.Name, codersdk.WorkspaceOptions{
309+
_, err = creator.WorkspaceByOwnerAndName(ctx, forUser.Username, wrk.Name, codersdk.WorkspaceOptions{
304310
IncludeDeleted: false,
305311
})
306312
require.NoError(t, err)

0 commit comments

Comments
 (0)