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

Function TestUpdateWorkspaceACL

coderd/workspaces_test.go:5657–5885  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

5655}
5656
5657func TestUpdateWorkspaceACL(t *testing.T) {
5658 t.Parallel()
5659
5660 t.Run("OK", func(t *testing.T) {
5661 t.Parallel()
5662
5663 dv := coderdtest.DeploymentValues(t)
5664
5665 adminClient := coderdtest.New(t, &coderdtest.Options{
5666 IncludeProvisionerDaemon: true,
5667 DeploymentValues: dv,
5668 })
5669 adminUser := coderdtest.CreateFirstUser(t, adminClient)
5670 orgID := adminUser.OrganizationID
5671 client, _ := coderdtest.CreateAnotherUser(t, adminClient, orgID)
5672 _, friend := coderdtest.CreateAnotherUser(t, adminClient, orgID)
5673
5674 tv := coderdtest.CreateTemplateVersion(t, adminClient, orgID, nil)
5675 coderdtest.AwaitTemplateVersionJobCompleted(t, adminClient, tv.ID)
5676 template := coderdtest.CreateTemplate(t, adminClient, orgID, tv.ID)
5677
5678 ws := coderdtest.CreateWorkspace(t, client, template.ID)
5679 coderdtest.AwaitWorkspaceBuildJobCompleted(t, client, ws.LatestBuild.ID)
5680
5681 ctx := testutil.Context(t, testutil.WaitMedium)
5682 err := client.UpdateWorkspaceACL(ctx, ws.ID, codersdk.UpdateWorkspaceACL{
5683 UserRoles: map[string]codersdk.WorkspaceRole{
5684 friend.ID.String(): codersdk.WorkspaceRoleAdmin,
5685 },
5686 })
5687 require.NoError(t, err)
5688
5689 workspaceACL, err := client.WorkspaceACL(ctx, ws.ID)
5690 require.NoError(t, err)
5691 require.Len(t, workspaceACL.Users, 1)
5692 require.Equal(t, workspaceACL.Users[0].ID, friend.ID)
5693 require.Equal(t, workspaceACL.Users[0].Role, codersdk.WorkspaceRoleAdmin)
5694 })
5695
5696 t.Run("UnknownUserID", func(t *testing.T) {
5697 t.Parallel()
5698
5699 dv := coderdtest.DeploymentValues(t)
5700
5701 adminClient := coderdtest.New(t, &coderdtest.Options{
5702 IncludeProvisionerDaemon: true,
5703 DeploymentValues: dv,
5704 })
5705 adminUser := coderdtest.CreateFirstUser(t, adminClient)
5706 orgID := adminUser.OrganizationID
5707 client, _ := coderdtest.CreateAnotherUser(t, adminClient, orgID)
5708
5709 tv := coderdtest.CreateTemplateVersion(t, adminClient, orgID, nil)
5710 coderdtest.AwaitTemplateVersionJobCompleted(t, adminClient, tv.ID)
5711 template := coderdtest.CreateTemplate(t, adminClient, orgID, tv.ID)
5712
5713 ws := coderdtest.CreateWorkspace(t, client, template.ID)
5714 coderdtest.AwaitWorkspaceBuildJobCompleted(t, client, ws.LatestBuild.ID)

Callers

nothing calls this directly

Calls 15

DeploymentValuesFunction · 0.92
NewFunction · 0.92
CreateFirstUserFunction · 0.92
CreateAnotherUserFunction · 0.92
CreateTemplateVersionFunction · 0.92
CreateTemplateFunction · 0.92
CreateWorkspaceFunction · 0.92
ContextFunction · 0.92
AsErrorFunction · 0.92
WorkspaceACLDisabledFunction · 0.92

Tested by

no test coverage detected