(t *testing.T)
| 8695 | } |
| 8696 | |
| 8697 | func TestWorkspaceACLObjectConstraint(t *testing.T) { |
| 8698 | t.Parallel() |
| 8699 | |
| 8700 | db, _ := dbtestutil.NewDB(t) |
| 8701 | org := dbgen.Organization(t, db, database.Organization{}) |
| 8702 | user := dbgen.User(t, db, database.User{}) |
| 8703 | template := dbgen.Template(t, db, database.Template{ |
| 8704 | CreatedBy: user.ID, |
| 8705 | OrganizationID: org.ID, |
| 8706 | }) |
| 8707 | workspace := dbgen.Workspace(t, db, database.WorkspaceTable{ |
| 8708 | OwnerID: user.ID, |
| 8709 | TemplateID: template.ID, |
| 8710 | Deleted: false, |
| 8711 | }) |
| 8712 | |
| 8713 | t.Run("GroupACLNull", func(t *testing.T) { |
| 8714 | t.Parallel() |
| 8715 | |
| 8716 | var nilACL database.WorkspaceACL |
| 8717 | |
| 8718 | ctx := testutil.Context(t, testutil.WaitLong) |
| 8719 | err := db.UpdateWorkspaceACLByID(ctx, database.UpdateWorkspaceACLByIDParams{ |
| 8720 | ID: workspace.ID, |
| 8721 | GroupACL: nilACL, |
| 8722 | UserACL: database.WorkspaceACL{}, |
| 8723 | }) |
| 8724 | require.Error(t, err) |
| 8725 | require.True(t, database.IsCheckViolation(err, database.CheckGroupAclIsObject)) |
| 8726 | }) |
| 8727 | |
| 8728 | t.Run("UserACLNull", func(t *testing.T) { |
| 8729 | t.Parallel() |
| 8730 | |
| 8731 | var nilACL database.WorkspaceACL |
| 8732 | |
| 8733 | ctx := testutil.Context(t, testutil.WaitLong) |
| 8734 | err := db.UpdateWorkspaceACLByID(ctx, database.UpdateWorkspaceACLByIDParams{ |
| 8735 | ID: workspace.ID, |
| 8736 | GroupACL: database.WorkspaceACL{}, |
| 8737 | UserACL: nilACL, |
| 8738 | }) |
| 8739 | require.Error(t, err) |
| 8740 | require.True(t, database.IsCheckViolation(err, database.CheckUserAclIsObject)) |
| 8741 | }) |
| 8742 | |
| 8743 | t.Run("ValidEmptyObjects", func(t *testing.T) { |
| 8744 | t.Parallel() |
| 8745 | |
| 8746 | ctx := testutil.Context(t, testutil.WaitLong) |
| 8747 | err := db.UpdateWorkspaceACLByID(ctx, database.UpdateWorkspaceACLByIDParams{ |
| 8748 | ID: workspace.ID, |
| 8749 | GroupACL: database.WorkspaceACL{}, |
| 8750 | UserACL: database.WorkspaceACL{}, |
| 8751 | }) |
| 8752 | require.NoError(t, err) |
| 8753 | }) |
| 8754 | } |
nothing calls this directly
no test coverage detected