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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy