enable onedrive backup for single user (#2317)

## Description

unskips the backup load tests for a single user.
Also adds a wrapper to make toggling restore
load tests controllable for each test suite,
instead of a file-wide configuration.

## Does this PR need a docs update or release note?

- [x]  No 

## Type of change

- [x] 🤖 Test

## Issue(s)

* #2279

## Test Plan

- [x] 💚 E2E
This commit is contained in:
Keepers 2023-01-30 18:23:08 -07:00 committed by GitHub
parent 2458508969
commit 48e6e8f08f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -114,6 +114,7 @@ func runLoadTest(
prefix, service string,
usersUnderTest []string,
bupSel, restSel selectors.Selector,
runRestore bool,
) {
//revive:enable:context-as-argument
t.Run(prefix+"_load_test_main", func(t *testing.T) {
@ -126,12 +127,33 @@ func runLoadTest(
runBackupListLoadTest(t, ctx, r, service, bid)
runBackupDetailsLoadTest(t, ctx, r, service, bid, usersUnderTest)
runRestoreLoadTest(t, ctx, r, prefix, service, bid, usersUnderTest, restSel, b, runRestore)
})
}
//revive:disable:context-as-argument
func runRestoreLoadTest(
t *testing.T,
ctx context.Context,
r repository.Repository,
prefix, service, backupID string,
usersUnderTest []string,
restSel selectors.Selector,
bup operations.BackupOperation,
runRestore bool,
) {
//revive:enable:context-as-argument
t.Run(prefix+"_load_test_restore", func(t *testing.T) {
if !runRestore {
t.Skip("restore load test is toggled off")
}
dest := tester.DefaultTestRestoreDestination()
rst, err := r.NewRestore(ctx, bid, restSel, dest)
rst, err := r.NewRestore(ctx, backupID, restSel, dest)
require.NoError(t, err)
runRestoreLoadTest(t, ctx, rst, service, b.Results.ItemsWritten, usersUnderTest)
doRestoreLoadTest(t, ctx, rst, service, bup.Results.ItemsWritten, usersUnderTest)
})
}
@ -240,7 +262,7 @@ func runBackupDetailsLoadTest(
}
//revive:disable:context-as-argument
func runRestoreLoadTest(
func doRestoreLoadTest(
t *testing.T,
ctx context.Context,
r operations.RestoreOperation,
@ -408,6 +430,7 @@ func (suite *RepositoryLoadTestExchangeSuite) TestExchange() {
"all_users", "exchange",
suite.usersUnderTest,
sel, sel, // same selection for backup and restore
true,
)
}
@ -456,6 +479,7 @@ func (suite *RepositoryIndividualLoadTestExchangeSuite) TestExchange() {
"single_user", "exchange",
suite.usersUnderTest,
sel, sel, // same selection for backup and restore
true,
)
}
@ -504,6 +528,7 @@ func (suite *RepositoryLoadTestOneDriveSuite) TestOneDrive() {
"all_users", "one_drive",
suite.usersUnderTest,
sel, sel, // same selection for backup and restore
false,
)
}
@ -523,7 +548,6 @@ func TestRepositoryIndividualLoadTestOneDriveSuite(t *testing.T) {
func (suite *RepositoryIndividualLoadTestOneDriveSuite) SetupSuite() {
t := suite.T()
t.Skip("not running onedrive load tests atm")
t.Parallel()
suite.ctx, suite.repo, suite.acct, suite.st = initM365Repo(t)
suite.usersUnderTest = singleUserSet(t)
@ -548,6 +572,7 @@ func (suite *RepositoryIndividualLoadTestOneDriveSuite) TestOneDrive() {
"single_user", "one_drive",
suite.usersUnderTest,
sel, sel, // same selection for backup and restore
false,
)
}
@ -596,6 +621,7 @@ func (suite *RepositoryLoadTestSharePointSuite) TestSharePoint() {
"all_sites", "share_point",
suite.sitesUnderTest,
sel, sel, // same selection for backup and restore
false,
)
}
@ -640,5 +666,6 @@ func (suite *RepositoryIndividualLoadTestSharePointSuite) TestSharePoint() {
"single_site", "share_point",
suite.sitesUnderTest,
sel, sel, // same selection for backup and restore
false,
)
}