restrict sharepoint test backups to test folders (#2969)
To avoid over-production of data, and thus longer CI times, any sharepoint integration test that can scope library usage down to only the "test" folders should do so. --- #### Does this PR need a docs update or release note? - [x] ⛔ No #### Type of change - [x] 🤖 Supportability/Tests #### Test Plan - [x] ⚡ Unit test - [x] 💚 E2E
This commit is contained in:
parent
b81a527c10
commit
983aaabdb2
@ -22,6 +22,7 @@ import (
|
|||||||
"github.com/alcionai/corso/src/pkg/control"
|
"github.com/alcionai/corso/src/pkg/control"
|
||||||
"github.com/alcionai/corso/src/pkg/repository"
|
"github.com/alcionai/corso/src/pkg/repository"
|
||||||
"github.com/alcionai/corso/src/pkg/selectors"
|
"github.com/alcionai/corso/src/pkg/selectors"
|
||||||
|
"github.com/alcionai/corso/src/pkg/selectors/testdata"
|
||||||
"github.com/alcionai/corso/src/pkg/storage"
|
"github.com/alcionai/corso/src/pkg/storage"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -161,7 +162,7 @@ func (suite *BackupDeleteSharePointE2ESuite) SetupSuite() {
|
|||||||
|
|
||||||
// some tests require an existing backup
|
// some tests require an existing backup
|
||||||
sel := selectors.NewSharePointBackup(sites)
|
sel := selectors.NewSharePointBackup(sites)
|
||||||
sel.Include(sel.LibraryFolders(selectors.Any()))
|
sel.Include(testdata.SharePointBackupFolderScope(sel))
|
||||||
|
|
||||||
suite.backupOp, err = suite.repo.NewBackup(ctx, sel.Selector)
|
suite.backupOp, err = suite.repo.NewBackup(ctx, sel.Selector)
|
||||||
require.NoError(t, err, clues.ToCore(err))
|
require.NoError(t, err, clues.ToCore(err))
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"github.com/alcionai/corso/src/pkg/fault"
|
"github.com/alcionai/corso/src/pkg/fault"
|
||||||
"github.com/alcionai/corso/src/pkg/path"
|
"github.com/alcionai/corso/src/pkg/path"
|
||||||
"github.com/alcionai/corso/src/pkg/selectors"
|
"github.com/alcionai/corso/src/pkg/selectors"
|
||||||
|
"github.com/alcionai/corso/src/pkg/selectors/testdata"
|
||||||
)
|
)
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
@ -168,7 +169,7 @@ func (suite *ConnectorDataCollectionIntegrationSuite) TestDataCollections_invali
|
|||||||
name: "Invalid sharepoint backup site",
|
name: "Invalid sharepoint backup site",
|
||||||
getSelector: func(t *testing.T) selectors.Selector {
|
getSelector: func(t *testing.T) selectors.Selector {
|
||||||
sel := selectors.NewSharePointBackup(owners)
|
sel := selectors.NewSharePointBackup(owners)
|
||||||
sel.Include(sel.LibraryFolders(selectors.Any()))
|
sel.Include(testdata.SharePointBackupFolderScope(sel))
|
||||||
return sel.Selector
|
return sel.Selector
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -194,7 +195,7 @@ func (suite *ConnectorDataCollectionIntegrationSuite) TestDataCollections_invali
|
|||||||
name: "missing sharepoint backup site",
|
name: "missing sharepoint backup site",
|
||||||
getSelector: func(t *testing.T) selectors.Selector {
|
getSelector: func(t *testing.T) selectors.Selector {
|
||||||
sel := selectors.NewSharePointBackup(owners)
|
sel := selectors.NewSharePointBackup(owners)
|
||||||
sel.Include(sel.LibraryFolders(selectors.Any()))
|
sel.Include(testdata.SharePointBackupFolderScope(sel))
|
||||||
sel.DiscreteOwner = ""
|
sel.DiscreteOwner = ""
|
||||||
return sel.Selector
|
return sel.Selector
|
||||||
},
|
},
|
||||||
@ -238,7 +239,7 @@ func (suite *ConnectorDataCollectionIntegrationSuite) TestSharePointDataCollecti
|
|||||||
name: "Libraries",
|
name: "Libraries",
|
||||||
getSelector: func() selectors.Selector {
|
getSelector: func() selectors.Selector {
|
||||||
sel := selectors.NewSharePointBackup(selSites)
|
sel := selectors.NewSharePointBackup(selSites)
|
||||||
sel.Include(sel.LibraryFolders(selectors.Any()))
|
sel.Include(testdata.SharePointBackupFolderScope(sel))
|
||||||
return sel.Selector
|
return sel.Selector
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -374,7 +375,7 @@ func (suite *ConnectorCreateSharePointCollectionIntegrationSuite) TestCreateShar
|
|||||||
)
|
)
|
||||||
|
|
||||||
sel := selectors.NewSharePointBackup(siteIDs)
|
sel := selectors.NewSharePointBackup(siteIDs)
|
||||||
sel.Include(sel.Lists(selectors.Any(), selectors.PrefixMatch()))
|
sel.Include(sel.Lists(selectors.Any()))
|
||||||
|
|
||||||
cols, excludes, err := gc.ProduceBackupCollections(
|
cols, excludes, err := gc.ProduceBackupCollections(
|
||||||
ctx,
|
ctx,
|
||||||
|
|||||||
@ -1115,27 +1115,28 @@ func (suite *GraphConnectorIntegrationSuite) TestBackup_CreatesPrefixCollections
|
|||||||
path.FilesCategory.String(),
|
path.FilesCategory.String(),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
// SharePoint lists and pages don't seem to check selectors as expected.
|
{
|
||||||
//{
|
name: "SharePoint",
|
||||||
// name: "SharePoint",
|
resource: Sites,
|
||||||
// resource: Sites,
|
selectorFunc: func(t *testing.T) selectors.Selector {
|
||||||
// selectorFunc: func(t *testing.T) selectors.Selector {
|
sel := selectors.NewSharePointBackup([]string{tester.M365SiteID(t)})
|
||||||
// sel := selectors.NewSharePointBackup([]string{tester.M365SiteID(t)})
|
sel.Include(
|
||||||
// sel.Include(
|
sel.LibraryFolders([]string{selectors.NoneTgt}),
|
||||||
// sel.Pages([]string{selectors.NoneTgt}),
|
// not yet in use
|
||||||
// sel.Lists([]string{selectors.NoneTgt}),
|
// sel.Pages([]string{selectors.NoneTgt}),
|
||||||
// sel.Libraries([]string{selectors.NoneTgt}),
|
// sel.Lists([]string{selectors.NoneTgt}),
|
||||||
// )
|
)
|
||||||
|
|
||||||
// return sel.Selector
|
return sel.Selector
|
||||||
// },
|
},
|
||||||
// service: path.SharePointService,
|
service: path.SharePointService,
|
||||||
// categories: []string{
|
categories: []string{
|
||||||
// path.PagesCategory.String(),
|
path.LibrariesCategory.String(),
|
||||||
// path.ListsCategory.String(),
|
// not yet in use
|
||||||
// path.LibrariesCategory.String(),
|
// path.PagesCategory.String(),
|
||||||
// },
|
// path.ListsCategory.String(),
|
||||||
//},
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range table {
|
for _, test := range table {
|
||||||
|
|||||||
@ -40,6 +40,7 @@ import (
|
|||||||
"github.com/alcionai/corso/src/pkg/fault"
|
"github.com/alcionai/corso/src/pkg/fault"
|
||||||
"github.com/alcionai/corso/src/pkg/path"
|
"github.com/alcionai/corso/src/pkg/path"
|
||||||
"github.com/alcionai/corso/src/pkg/selectors"
|
"github.com/alcionai/corso/src/pkg/selectors"
|
||||||
|
"github.com/alcionai/corso/src/pkg/selectors/testdata"
|
||||||
"github.com/alcionai/corso/src/pkg/store"
|
"github.com/alcionai/corso/src/pkg/store"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -1608,7 +1609,7 @@ func (suite *BackupOpIntegrationSuite) TestBackup_Run_sharePoint() {
|
|||||||
sel = selectors.NewSharePointBackup([]string{suite.site})
|
sel = selectors.NewSharePointBackup([]string{suite.site})
|
||||||
)
|
)
|
||||||
|
|
||||||
sel.Include(sel.LibraryFolders(selectors.Any()))
|
sel.Include(testdata.SharePointBackupFolderScope(sel))
|
||||||
|
|
||||||
bo, _, kw, _, _, closer := prepNewTestBackupOp(t, ctx, mb, sel.Selector, control.Toggles{})
|
bo, _, kw, _, _, closer := prepNewTestBackupOp(t, ctx, mb, sel.Selector, control.Toggles{})
|
||||||
defer closer()
|
defer closer()
|
||||||
|
|||||||
9
src/pkg/selectors/testdata/sharepoint.go
vendored
Normal file
9
src/pkg/selectors/testdata/sharepoint.go
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
package testdata
|
||||||
|
|
||||||
|
import "github.com/alcionai/corso/src/pkg/selectors"
|
||||||
|
|
||||||
|
// SharePointBackupFolderScope is the standard folder scope that should be used
|
||||||
|
// in integration backups with sharepoint.
|
||||||
|
func SharePointBackupFolderScope(sel *selectors.SharePointBackup) []selectors.SharePointScope {
|
||||||
|
return sel.LibraryFolders([]string{"test"}, selectors.PrefixMatch())
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user