diff --git a/src/internal/operations/test/group_test.go b/src/internal/operations/test/group_test.go index 248f081f2..d2352919e 100644 --- a/src/internal/operations/test/group_test.go +++ b/src/internal/operations/test/group_test.go @@ -48,13 +48,13 @@ func (suite *GroupsBackupIntgSuite) TestBackup_Run_groupsBasic() { var ( mb = evmock.NewBus() - sel = selectors.NewGroupsBackup([]string{suite.its.site.ID}) + sel = selectors.NewGroupsBackup([]string{suite.its.group.ID}) opts = control.DefaultOptions() ) sel.Include( selTD.GroupsBackupLibraryFolderScope(sel), - selTD.GroupsBackupChannelScope(sel)) + selTD.GroupsBackupChannelScope(sel)) // FIXME: channel backups are not ready bo, bod := prepNewTestBackupOp(t, ctx, mb, sel.Selector, opts, version.Backup) defer bod.close(t, ctx) @@ -79,7 +79,7 @@ func (suite *GroupsBackupIntgSuite) TestBackup_Run_groupsExtensions() { var ( mb = evmock.NewBus() - sel = selectors.NewGroupsBackup([]string{suite.its.site.ID}) + sel = selectors.NewGroupsBackup([]string{suite.its.group.ID}) opts = control.DefaultOptions() tenID = tconfig.M365TenantID(t) svc = path.GroupsService diff --git a/src/internal/operations/test/helper_test.go b/src/internal/operations/test/helper_test.go index 2d68f0726..93dcf3e45 100644 --- a/src/internal/operations/test/helper_test.go +++ b/src/internal/operations/test/helper_test.go @@ -133,8 +133,12 @@ func prepNewTestBackupOp( bod.sw = store.NewWrapper(bod.kms) connectorResource := resource.Users - if sel.Service == selectors.ServiceSharePoint { + + switch sel.Service { + case selectors.ServiceSharePoint: connectorResource = resource.Sites + case selectors.ServiceGroups: + connectorResource = resource.Groups } bod.ctrl, bod.sel = ControllerWithSelector( @@ -521,6 +525,8 @@ func toDataLayerPath( p, err = pb.ToDataLayerOneDrivePath(tenant, resourceOwner, isItem) case path.SharePointService: p, err = pb.ToDataLayerSharePointPath(tenant, resourceOwner, category, isItem) + case path.GroupsService: + p, err = pb.ToDataLayerPath(tenant, resourceOwner, service, category, false) default: err = clues.New(fmt.Sprintf("unknown service: %s", service)) } @@ -575,6 +581,11 @@ type ids struct { DriveRootFolderID string } +type gids struct { + ID string + RootSite ids +} + type intgTesterSetup struct { ac api.Client gockAC api.Client @@ -582,7 +593,7 @@ type intgTesterSetup struct { secondaryUser ids site ids secondarySite ids - group ids + group gids } func newIntegrationTesterSetup(t *testing.T) intgTesterSetup { @@ -652,22 +663,26 @@ func siteIDs(t *testing.T, id string, ac api.Client) ids { return r } -func groupIDs(t *testing.T, id string, ac api.Client) ids { - r := ids{ID: id} +func groupIDs(t *testing.T, id string, ac api.Client) gids { + ctx, flush := tester.NewContext(t) + defer flush() - // ctx, flush := tester.NewContext(t) - // defer flush() + r := gids{ID: id} - // TODO: get default site drive info - // drive, err := ac.Groups().GetDefaultDrive(ctx, id) - // require.NoError(t, err, clues.ToCore(err)) + site, err := ac.Groups().GetRootSite(ctx, id) + require.NoError(t, err, clues.ToCore(err)) - // r.DriveID = ptr.Val(drive.GetId()) + r.RootSite.ID = ptr.Val(site.GetId()) - // driveRootFolder, err := ac.Drives().GetRootFolder(ctx, r.DriveID) - // require.NoError(t, err, clues.ToCore(err)) + drive, err := ac.Sites().GetDefaultDrive(ctx, r.RootSite.ID) + require.NoError(t, err, clues.ToCore(err)) - // r.DriveRootFolderID = ptr.Val(driveRootFolder.GetId()) + r.RootSite.DriveID = ptr.Val(drive.GetId()) + + driveRootFolder, err := ac.Drives().GetRootFolder(ctx, r.RootSite.DriveID) + require.NoError(t, err, clues.ToCore(err)) + + r.RootSite.DriveRootFolderID = ptr.Val(driveRootFolder.GetId()) return r } diff --git a/src/internal/operations/test/restore_helper_test.go b/src/internal/operations/test/restore_helper_test.go index 5b7ed6d5c..95f3f3861 100644 --- a/src/internal/operations/test/restore_helper_test.go +++ b/src/internal/operations/test/restore_helper_test.go @@ -108,8 +108,12 @@ func prepNewTestRestoreOp( rod.sw = store.NewWrapper(rod.kms) connectorResource := resource.Users - if sel.Service == selectors.ServiceSharePoint { + + switch sel.Service { + case selectors.ServiceSharePoint: connectorResource = resource.Sites + case selectors.ServiceGroups: + connectorResource = resource.Groups } rod.ctrl, rod.sel = ControllerWithSelector(