attach logger to test ctx, use flusher (#1083)
## Description Replace all cases of context.Background() and context.TODO() with the testing ctx, which seeds a logging instance into the context. The seed is less important than the flush action, since errant log.Ctx(ctx) calls will automatically use the log singleton. But in order for the logs to show up within the test, they need to get flushed. See my comments for focus on non-chaff changes. ## Type of change - [x] 🤖 Test ## Issue(s) * #902 ## Test Plan - [x] 💪 Manual - [x] ⚡ Unit test
This commit is contained in:
parent
211c248f35
commit
0b65b20200
@ -61,6 +61,10 @@ func TestBackupExchangeIntegrationSuite(t *testing.T) {
|
||||
|
||||
func (suite *BackupExchangeIntegrationSuite) SetupSuite() {
|
||||
t := suite.T()
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
_, err := tester.GetRequiredEnvSls(
|
||||
tester.AWSStorageCredEnvs,
|
||||
tester.M365AcctCredEnvs)
|
||||
@ -82,7 +86,7 @@ func (suite *BackupExchangeIntegrationSuite) SetupSuite() {
|
||||
suite.vpr, suite.cfgFP, err = tester.MakeTempTestConfigClone(t, force)
|
||||
require.NoError(t, err)
|
||||
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
suite.m365UserID = tester.M365UserID(t)
|
||||
|
||||
// init the repo first
|
||||
@ -97,7 +101,9 @@ func (suite *BackupExchangeIntegrationSuite) TestExchangeBackupCmd() {
|
||||
recorder.Reset()
|
||||
|
||||
suite.T().Run(set.String(), func(t *testing.T) {
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
defer flush()
|
||||
|
||||
cmd := tester.StubRootCmd(
|
||||
"backup", "create", "exchange",
|
||||
@ -171,7 +177,11 @@ func (suite *PreparedBackupExchangeIntegrationSuite) SetupSuite() {
|
||||
suite.vpr, suite.cfgFP, err = tester.MakeTempTestConfigClone(t, force)
|
||||
require.NoError(t, err)
|
||||
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
|
||||
defer flush()
|
||||
|
||||
suite.m365UserID = tester.M365UserID(t)
|
||||
|
||||
// init the repo first
|
||||
@ -220,7 +230,9 @@ func (suite *PreparedBackupExchangeIntegrationSuite) TestExchangeListCmd() {
|
||||
recorder.Reset()
|
||||
|
||||
suite.T().Run(set.String(), func(t *testing.T) {
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
defer flush()
|
||||
|
||||
cmd := tester.StubRootCmd(
|
||||
"backup", "list", "exchange",
|
||||
@ -248,7 +260,10 @@ func (suite *PreparedBackupExchangeIntegrationSuite) TestExchangeDetailsCmd() {
|
||||
recorder.Reset()
|
||||
|
||||
suite.T().Run(set.String(), func(t *testing.T) {
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
defer flush()
|
||||
|
||||
bID := suite.backupOps[set].Results.BackupID
|
||||
|
||||
// fetch the details from the repo first
|
||||
@ -342,7 +357,10 @@ func (suite *BackupDeleteExchangeIntegrationSuite) SetupSuite() {
|
||||
suite.vpr, suite.cfgFP, err = tester.MakeTempTestConfigClone(t, force)
|
||||
require.NoError(t, err)
|
||||
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
|
||||
defer flush()
|
||||
|
||||
// init the repo first
|
||||
suite.repo, err = repository.Initialize(ctx, suite.acct, suite.st, control.Options{})
|
||||
@ -360,8 +378,11 @@ func (suite *BackupDeleteExchangeIntegrationSuite) SetupSuite() {
|
||||
}
|
||||
|
||||
func (suite *BackupDeleteExchangeIntegrationSuite) TestExchangeBackupDeleteCmd() {
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
t := suite.T()
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
|
||||
defer flush()
|
||||
|
||||
cmd := tester.StubRootCmd(
|
||||
"backup", "delete", "exchange",
|
||||
@ -383,8 +404,11 @@ func (suite *BackupDeleteExchangeIntegrationSuite) TestExchangeBackupDeleteCmd()
|
||||
}
|
||||
|
||||
func (suite *BackupDeleteExchangeIntegrationSuite) TestExchangeBackupDeleteCmd_UnknownID() {
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
t := suite.T()
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
|
||||
defer flush()
|
||||
|
||||
cmd := tester.StubRootCmd(
|
||||
"backup", "delete", "exchange",
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package backup
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
@ -215,7 +214,8 @@ func (suite *ExchangeSuite) TestExchangeBackupCreateSelectors() {
|
||||
}
|
||||
|
||||
func (suite *ExchangeSuite) TestExchangeBackupDetailsSelectors() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
for _, test := range testdata.ExchangeOptionDetailLookups {
|
||||
suite.T().Run(test.Name, func(t *testing.T) {
|
||||
@ -234,9 +234,11 @@ func (suite *ExchangeSuite) TestExchangeBackupDetailsSelectors() {
|
||||
|
||||
func (suite *ExchangeSuite) TestExchangeBackupDetailsSelectorsBadBackupID() {
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
backupGetter := &testdata.MockBackupGetter{}
|
||||
|
||||
defer flush()
|
||||
|
||||
output, err := runDetailsExchangeCmd(
|
||||
ctx,
|
||||
backupGetter,
|
||||
@ -250,7 +252,8 @@ func (suite *ExchangeSuite) TestExchangeBackupDetailsSelectorsBadBackupID() {
|
||||
|
||||
// TODO(ashmrtn): Uncomment these when the CLI validates flag input values.
|
||||
//func (suite *ExchangeSuite) TestExchangeBackupDetailsSelectorsBadFormats() {
|
||||
// ctx := context.Background()
|
||||
// ctx, flush := tester.NewContext()
|
||||
// defer flush()
|
||||
//
|
||||
// for _, test := range testdata.BadExchangeOptionsFormats {
|
||||
// suite.T().Run(test.Name, func(t *testing.T) {
|
||||
|
||||
@ -10,10 +10,6 @@ import (
|
||||
"github.com/alcionai/corso/src/cli"
|
||||
)
|
||||
|
||||
type CliSuite struct {
|
||||
suite.Suite
|
||||
}
|
||||
|
||||
type CLISuite struct {
|
||||
suite.Suite
|
||||
}
|
||||
|
||||
@ -2,13 +2,12 @@ package print
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
)
|
||||
|
||||
type PrintUnitSuite struct {
|
||||
@ -20,10 +19,10 @@ func TestPrintUnitSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *PrintUnitSuite) TestOnly() {
|
||||
ctx := tester.NewContext()
|
||||
t := suite.T()
|
||||
c := &cobra.Command{}
|
||||
ctx = SetRootCmd(ctx, c)
|
||||
// cannot use tester.NewContext() here: circular imports
|
||||
ctx := SetRootCmd(context.Background(), c)
|
||||
assert.NoError(t, Only(ctx, nil))
|
||||
assert.True(t, c.SilenceUsage)
|
||||
}
|
||||
|
||||
@ -55,7 +55,8 @@ func (suite *S3IntegrationSuite) TestInitS3Cmd() {
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := tester.NewContext()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
cfg, err := st.S3Config()
|
||||
@ -80,8 +81,10 @@ func (suite *S3IntegrationSuite) TestInitS3Cmd() {
|
||||
}
|
||||
|
||||
func (suite *S3IntegrationSuite) TestInitMultipleTimes() {
|
||||
ctx := tester.NewContext()
|
||||
t := suite.T()
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
cfg, err := st.S3Config()
|
||||
@ -108,8 +111,10 @@ func (suite *S3IntegrationSuite) TestInitMultipleTimes() {
|
||||
}
|
||||
|
||||
func (suite *S3IntegrationSuite) TestInitS3Cmd_missingBucket() {
|
||||
ctx := tester.NewContext()
|
||||
t := suite.T()
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
cfg, err := st.S3Config()
|
||||
@ -147,7 +152,9 @@ func (suite *S3IntegrationSuite) TestConnectS3Cmd() {
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := tester.NewContext()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
cfg, err := st.S3Config()
|
||||
require.NoError(t, err)
|
||||
@ -182,8 +189,10 @@ func (suite *S3IntegrationSuite) TestConnectS3Cmd() {
|
||||
}
|
||||
|
||||
func (suite *S3IntegrationSuite) TestConnectS3Cmd_BadBucket() {
|
||||
ctx := tester.NewContext()
|
||||
t := suite.T()
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
cfg, err := st.S3Config()
|
||||
@ -206,8 +215,10 @@ func (suite *S3IntegrationSuite) TestConnectS3Cmd_BadBucket() {
|
||||
}
|
||||
|
||||
func (suite *S3IntegrationSuite) TestConnectS3Cmd_BadPrefix() {
|
||||
ctx := tester.NewContext()
|
||||
t := suite.T()
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
cfg, err := st.S3Config()
|
||||
|
||||
@ -14,7 +14,6 @@ import (
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
"github.com/alcionai/corso/src/pkg/account"
|
||||
"github.com/alcionai/corso/src/pkg/control"
|
||||
"github.com/alcionai/corso/src/pkg/logger"
|
||||
"github.com/alcionai/corso/src/pkg/path"
|
||||
"github.com/alcionai/corso/src/pkg/repository"
|
||||
"github.com/alcionai/corso/src/pkg/selectors"
|
||||
@ -59,6 +58,10 @@ func TestRestoreExchangeIntegrationSuite(t *testing.T) {
|
||||
|
||||
func (suite *RestoreExchangeIntegrationSuite) SetupSuite() {
|
||||
t := suite.T()
|
||||
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
_, err := tester.GetRequiredEnvSls(
|
||||
tester.AWSStorageCredEnvs,
|
||||
tester.M365AcctCredEnvs,
|
||||
@ -80,7 +83,6 @@ func (suite *RestoreExchangeIntegrationSuite) SetupSuite() {
|
||||
suite.vpr, suite.cfgFP, err = tester.MakeTempTestConfigClone(t, force)
|
||||
require.NoError(t, err)
|
||||
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
suite.m365UserID = tester.M365UserID(t)
|
||||
|
||||
// init the repo first
|
||||
@ -125,9 +127,10 @@ func (suite *RestoreExchangeIntegrationSuite) SetupSuite() {
|
||||
func (suite *RestoreExchangeIntegrationSuite) TestExchangeRestoreCmd() {
|
||||
for _, set := range backupDataSets {
|
||||
suite.T().Run(set.String(), func(t *testing.T) {
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx, _ = logger.SeedLevel(ctx, logger.Development)
|
||||
defer logger.Flush(ctx)
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
|
||||
defer flush()
|
||||
|
||||
cmd := tester.StubRootCmd(
|
||||
"restore", "exchange",
|
||||
@ -148,9 +151,10 @@ func (suite *RestoreExchangeIntegrationSuite) TestExchangeRestoreCmd_badTimeFlag
|
||||
}
|
||||
|
||||
suite.T().Run(set.String(), func(t *testing.T) {
|
||||
ctx := config.SetViper(tester.NewContext(), suite.vpr)
|
||||
ctx, _ = logger.SeedLevel(ctx, logger.Development)
|
||||
defer logger.Flush(ctx)
|
||||
ctx, flush := tester.NewContext()
|
||||
ctx = config.SetViper(ctx, suite.vpr)
|
||||
|
||||
defer flush()
|
||||
|
||||
var timeFilter string
|
||||
switch set {
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package common_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
@ -12,7 +11,6 @@ import (
|
||||
|
||||
type CommonBucketsSuite struct {
|
||||
suite.Suite
|
||||
ctx context.Context
|
||||
}
|
||||
|
||||
func TestCommonBucketsSuite(t *testing.T) {
|
||||
|
||||
@ -260,7 +260,9 @@ func (suite *ExchangeServiceSuite) TestSetupExchangeCollection() {
|
||||
// TestGraphQueryFunctions verifies if Query functions APIs
|
||||
// through Microsoft Graph are functional
|
||||
func (suite *ExchangeServiceSuite) TestGraphQueryFunctions() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
userID := tester.M365UserID(suite.T())
|
||||
tests := []struct {
|
||||
name string
|
||||
@ -309,7 +311,10 @@ func (suite *ExchangeServiceSuite) TestGraphQueryFunctions() {
|
||||
// at the top level of the file tree
|
||||
func (suite *ExchangeServiceSuite) TestGetContainerID() {
|
||||
userID := tester.M365UserID(suite.T())
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
tests := []struct {
|
||||
name string
|
||||
containerName string
|
||||
@ -370,14 +375,16 @@ func (suite *ExchangeServiceSuite) TestGetContainerID() {
|
||||
|
||||
//==========================
|
||||
// Restore Functions
|
||||
//======================
|
||||
//==========================
|
||||
|
||||
// TestRestoreContact ensures contact object can be created, placed into
|
||||
// the Corso Folder. The function handles test clean-up.
|
||||
func (suite *ExchangeServiceSuite) TestRestoreContact() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var (
|
||||
t = suite.T()
|
||||
ctx = context.Background()
|
||||
userID = tester.M365UserID(t)
|
||||
now = time.Now()
|
||||
folderName = "TestRestoreContact: " + common.FormatSimpleDateTime(now)
|
||||
@ -394,7 +401,7 @@ func (suite *ExchangeServiceSuite) TestRestoreContact() {
|
||||
assert.NoError(t, err)
|
||||
}()
|
||||
|
||||
info, err := RestoreExchangeContact(context.Background(),
|
||||
info, err := RestoreExchangeContact(ctx,
|
||||
mockconnector.GetMockContactBytes("Corso TestContact"),
|
||||
suite.es,
|
||||
control.Copy,
|
||||
@ -407,9 +414,11 @@ func (suite *ExchangeServiceSuite) TestRestoreContact() {
|
||||
// TestRestoreEvent verifies that event object is able to created
|
||||
// and sent into the test account of the Corso user in the newly created Corso Calendar
|
||||
func (suite *ExchangeServiceSuite) TestRestoreEvent() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var (
|
||||
t = suite.T()
|
||||
ctx = context.Background()
|
||||
userID = tester.M365UserID(t)
|
||||
name = "TestRestoreEvent: " + common.FormatSimpleDateTime(time.Now())
|
||||
)
|
||||
@ -425,7 +434,7 @@ func (suite *ExchangeServiceSuite) TestRestoreEvent() {
|
||||
assert.NoError(t, err)
|
||||
}()
|
||||
|
||||
info, err := RestoreExchangeEvent(context.Background(),
|
||||
info, err := RestoreExchangeEvent(ctx,
|
||||
mockconnector.GetMockEventWithAttendeesBytes(name),
|
||||
suite.es,
|
||||
control.Copy,
|
||||
@ -438,7 +447,9 @@ func (suite *ExchangeServiceSuite) TestRestoreEvent() {
|
||||
// TestGetRestoreContainer checks the ability to Create a "container" for the
|
||||
// GraphConnector's Restore Workflow based on OptionIdentifier.
|
||||
func (suite *ExchangeServiceSuite) TestGetRestoreContainer() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
dest := tester.DefaultTestRestoreDestination()
|
||||
tests := []struct {
|
||||
name string
|
||||
@ -498,7 +509,9 @@ func (suite *ExchangeServiceSuite) TestGetRestoreContainer() {
|
||||
|
||||
// TestRestoreExchangeObject verifies path.Category usage for restored objects
|
||||
func (suite *ExchangeServiceSuite) TestRestoreExchangeObject() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
userID := tester.M365UserID(t)
|
||||
now := time.Now()
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package exchange
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
absser "github.com/microsoft/kiota-abstractions-go/serialization"
|
||||
@ -71,8 +70,10 @@ func loadService(t *testing.T) *exchangeService {
|
||||
// TestIterativeFunctions verifies that GraphQuery to Iterate
|
||||
// functions are valid for current versioning of msgraph-go-sdk
|
||||
func (suite *ExchangeIteratorSuite) TestIterativeFunctions() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var (
|
||||
ctx = context.Background()
|
||||
t = suite.T()
|
||||
mailScope, contactScope, eventScope []selectors.ExchangeScope
|
||||
userID = tester.M365UserID(t)
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package exchange
|
||||
|
||||
import (
|
||||
"context"
|
||||
stdpath "path"
|
||||
"strings"
|
||||
"testing"
|
||||
@ -220,7 +219,8 @@ func TestConfiguredMailFolderCacheUnitSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *ConfiguredMailFolderCacheUnitSuite) TestLookupCachedFolderNoPathsCached() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
for _, c := range suite.allContainers {
|
||||
suite.T().Run(*c.GetDisplayName(), func(t *testing.T) {
|
||||
@ -233,8 +233,10 @@ func (suite *ConfiguredMailFolderCacheUnitSuite) TestLookupCachedFolderNoPathsCa
|
||||
}
|
||||
|
||||
func (suite *ConfiguredMailFolderCacheUnitSuite) TestLookupCachedFolderCachesPaths() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
c := suite.allContainers[len(suite.allContainers)-1]
|
||||
|
||||
p, err := suite.mc.IDToPath(ctx, c.id)
|
||||
@ -251,8 +253,10 @@ func (suite *ConfiguredMailFolderCacheUnitSuite) TestLookupCachedFolderCachesPat
|
||||
}
|
||||
|
||||
func (suite *ConfiguredMailFolderCacheUnitSuite) TestLookupCachedFolderErrorsParentNotFound() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
last := suite.allContainers[len(suite.allContainers)-1]
|
||||
almostLast := suite.allContainers[len(suite.allContainers)-2]
|
||||
|
||||
@ -263,8 +267,10 @@ func (suite *ConfiguredMailFolderCacheUnitSuite) TestLookupCachedFolderErrorsPar
|
||||
}
|
||||
|
||||
func (suite *ConfiguredMailFolderCacheUnitSuite) TestLookupCachedFolderErrorsNotFound() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
_, err := suite.mc.IDToPath(ctx, "foo")
|
||||
assert.Error(t, err)
|
||||
@ -305,6 +311,9 @@ func TestMailFolderCacheIntegrationSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *MailFolderCacheIntegrationSuite) TestDeltaFetch() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
tests := []struct {
|
||||
name string
|
||||
root string
|
||||
@ -318,7 +327,6 @@ func (suite *MailFolderCacheIntegrationSuite) TestDeltaFetch() {
|
||||
root: topFolderID,
|
||||
},
|
||||
}
|
||||
ctx := context.Background()
|
||||
userID := tester.M365UserID(suite.T())
|
||||
|
||||
for _, test := range tests {
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package exchange
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
@ -34,8 +33,10 @@ func (suite *ServiceFunctionsIntegrationSuite) SetupSuite() {
|
||||
}
|
||||
|
||||
func (suite *ServiceFunctionsIntegrationSuite) TestGetAllCalendars() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
gs := loadService(suite.T())
|
||||
ctx := context.Background()
|
||||
|
||||
table := []struct {
|
||||
name, contains, user string
|
||||
@ -79,9 +80,11 @@ func (suite *ServiceFunctionsIntegrationSuite) TestGetAllCalendars() {
|
||||
}
|
||||
|
||||
func (suite *ServiceFunctionsIntegrationSuite) TestGetAllContactFolders() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
gs := loadService(suite.T())
|
||||
user := tester.M365UserID(suite.T())
|
||||
ctx := context.Background()
|
||||
|
||||
table := []struct {
|
||||
name, contains, user string
|
||||
@ -125,8 +128,10 @@ func (suite *ServiceFunctionsIntegrationSuite) TestGetAllContactFolders() {
|
||||
}
|
||||
|
||||
func (suite *ServiceFunctionsIntegrationSuite) TestGetAllMailFolders() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
gs := loadService(suite.T())
|
||||
ctx := context.Background()
|
||||
|
||||
table := []struct {
|
||||
name, contains, user string
|
||||
@ -170,7 +175,9 @@ func (suite *ServiceFunctionsIntegrationSuite) TestGetAllMailFolders() {
|
||||
}
|
||||
|
||||
func (suite *ServiceFunctionsIntegrationSuite) TestCollectContainers() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
failFast := false
|
||||
containerCount := 1
|
||||
t := suite.T()
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package connector
|
||||
|
||||
import (
|
||||
"context"
|
||||
"sync"
|
||||
"testing"
|
||||
|
||||
@ -30,7 +29,9 @@ func TestDisconnectedGraphSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *DisconnectedGraphConnectorSuite) TestBadConnection() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
acct func(t *testing.T) account.Account
|
||||
@ -88,8 +89,11 @@ func (suite *DisconnectedGraphConnectorSuite) TestBuild() {
|
||||
}
|
||||
|
||||
func statusTestTask(gc *GraphConnector, objects, success, folder int) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
status := support.CreateStatus(
|
||||
context.Background(),
|
||||
ctx,
|
||||
support.Restore, folder,
|
||||
support.CollectionMetrics{
|
||||
Objects: objects,
|
||||
@ -181,7 +185,10 @@ func (suite *DisconnectedGraphConnectorSuite) TestGraphConnector_ErrorChecking()
|
||||
|
||||
func (suite *DisconnectedGraphConnectorSuite) TestRestoreFailsBadService() {
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
gc := GraphConnector{wg: &sync.WaitGroup{}}
|
||||
sel := selectors.Selector{
|
||||
Service: selectors.ServiceUnknown,
|
||||
|
||||
@ -45,7 +45,9 @@ func TestGraphConnectorIntegrationSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *GraphConnectorIntegrationSuite) SetupSuite() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
_, err := tester.GetRequiredEnvVars(tester.M365AcctCredEnvs...)
|
||||
require.NoError(suite.T(), err)
|
||||
suite.connector = loadConnector(ctx, suite.T())
|
||||
@ -61,7 +63,10 @@ func (suite *GraphConnectorIntegrationSuite) TestSetTenantUsers() {
|
||||
Users: make(map[string]string, 0),
|
||||
credentials: suite.connector.credentials,
|
||||
}
|
||||
ctx := context.Background()
|
||||
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
service, err := newConnector.createService(false)
|
||||
require.NoError(suite.T(), err)
|
||||
|
||||
@ -80,7 +85,9 @@ func (suite *GraphConnectorIntegrationSuite) TestSetTenantUsers() {
|
||||
// - contacts
|
||||
// - events
|
||||
func (suite *GraphConnectorIntegrationSuite) TestExchangeDataCollection() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
connector := loadConnector(ctx, suite.T())
|
||||
tests := []struct {
|
||||
name string
|
||||
@ -137,12 +144,14 @@ func (suite *GraphConnectorIntegrationSuite) TestExchangeDataCollection() {
|
||||
// test account can be successfully downloaded into bytes and restored into
|
||||
// M365 mail objects
|
||||
func (suite *GraphConnectorIntegrationSuite) TestMailSerializationRegression() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
connector := loadConnector(ctx, t)
|
||||
sel := selectors.NewExchangeBackup()
|
||||
sel.Include(sel.MailFolders([]string{suite.user}, []string{exchange.DefaultMailFolder}))
|
||||
collection, err := connector.createCollections(context.Background(), sel.Scopes()[0])
|
||||
collection, err := connector.createCollections(ctx, sel.Scopes()[0])
|
||||
require.NoError(t, err)
|
||||
|
||||
for _, edc := range collection {
|
||||
@ -170,7 +179,10 @@ func (suite *GraphConnectorIntegrationSuite) TestMailSerializationRegression() {
|
||||
// and to store contact within Collection. Downloaded contacts are run through
|
||||
// a regression test to ensure that downloaded items can be uploaded.
|
||||
func (suite *GraphConnectorIntegrationSuite) TestContactSerializationRegression() {
|
||||
connector := loadConnector(context.Background(), suite.T())
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
connector := loadConnector(ctx, suite.T())
|
||||
|
||||
tests := []struct {
|
||||
name string
|
||||
@ -181,7 +193,7 @@ func (suite *GraphConnectorIntegrationSuite) TestContactSerializationRegression(
|
||||
getCollection: func(t *testing.T) []*exchange.Collection {
|
||||
sel := selectors.NewExchangeBackup()
|
||||
sel.Include(sel.ContactFolders([]string{suite.user}, []string{exchange.DefaultContactFolder}))
|
||||
collections, err := connector.createCollections(context.Background(), sel.Scopes()[0])
|
||||
collections, err := connector.createCollections(ctx, sel.Scopes()[0])
|
||||
require.NoError(t, err)
|
||||
|
||||
return collections
|
||||
@ -219,7 +231,10 @@ func (suite *GraphConnectorIntegrationSuite) TestContactSerializationRegression(
|
||||
// TestEventsSerializationRegression ensures functionality of createCollections
|
||||
// to be able to successfully query, download and restore event objects
|
||||
func (suite *GraphConnectorIntegrationSuite) TestEventsSerializationRegression() {
|
||||
connector := loadConnector(context.Background(), suite.T())
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
connector := loadConnector(ctx, suite.T())
|
||||
|
||||
tests := []struct {
|
||||
name, expected string
|
||||
@ -231,7 +246,7 @@ func (suite *GraphConnectorIntegrationSuite) TestEventsSerializationRegression()
|
||||
getCollection: func(t *testing.T) []*exchange.Collection {
|
||||
sel := selectors.NewExchangeBackup()
|
||||
sel.Include(sel.EventCalendars([]string{suite.user}, []string{exchange.DefaultCalendar}))
|
||||
collections, err := connector.createCollections(context.Background(), sel.Scopes()[0])
|
||||
collections, err := connector.createCollections(ctx, sel.Scopes()[0])
|
||||
require.NoError(t, err)
|
||||
|
||||
return collections
|
||||
@ -243,7 +258,7 @@ func (suite *GraphConnectorIntegrationSuite) TestEventsSerializationRegression()
|
||||
getCollection: func(t *testing.T) []*exchange.Collection {
|
||||
sel := selectors.NewExchangeBackup()
|
||||
sel.Include(sel.EventCalendars([]string{suite.user}, []string{"Birthdays"}))
|
||||
collections, err := connector.createCollections(context.Background(), sel.Scopes()[0])
|
||||
collections, err := connector.createCollections(ctx, sel.Scopes()[0])
|
||||
require.NoError(t, err)
|
||||
|
||||
return collections
|
||||
@ -283,7 +298,9 @@ func (suite *GraphConnectorIntegrationSuite) TestEventsSerializationRegression()
|
||||
// The final test insures that more than a 75% of the user collections are
|
||||
// returned. If an error was experienced, the test will fail overall
|
||||
func (suite *GraphConnectorIntegrationSuite) TestAccessOfInboxAllUsers() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
connector := loadConnector(ctx, t)
|
||||
sel := selectors.NewExchangeBackup()
|
||||
@ -293,7 +310,7 @@ func (suite *GraphConnectorIntegrationSuite) TestAccessOfInboxAllUsers() {
|
||||
for _, scope := range scopes {
|
||||
users := scope.Get(selectors.ExchangeUser)
|
||||
standard := (len(users) / 4) * 3
|
||||
collections, err := connector.createCollections(context.Background(), scope)
|
||||
collections, err := connector.createCollections(ctx, scope)
|
||||
require.NoError(t, err)
|
||||
suite.Greater(len(collections), standard)
|
||||
}
|
||||
@ -342,7 +359,8 @@ func (suite *GraphConnectorIntegrationSuite) TestEmptyCollections() {
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
deets, err := suite.connector.RestoreDataCollections(ctx, test.sel, dest, test.col)
|
||||
require.NoError(t, err)
|
||||
@ -645,7 +663,9 @@ func (suite *GraphConnectorIntegrationSuite) TestRestoreAndBackup() {
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
// Get a dest per test so they're independent.
|
||||
dest := tester.DefaultTestRestoreDestination()
|
||||
|
||||
@ -845,7 +865,9 @@ func (suite *GraphConnectorIntegrationSuite) TestMultiFolderBackupDifferentNames
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
restoreSel := getSelectorWith(test.service)
|
||||
dests := make([]control.RestoreDestination, 0, len(test.collections))
|
||||
allItems := 0
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package onedrive
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
|
||||
@ -9,6 +8,8 @@ import (
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
)
|
||||
|
||||
func expectedPathAsSlice(t *testing.T, tenant, user string, rest ...string) []string {
|
||||
@ -126,8 +127,11 @@ func (suite *OneDriveCollectionsSuite) TestUpdateCollections() {
|
||||
|
||||
for _, tt := range tests {
|
||||
suite.T().Run(tt.testCase, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
c := NewCollections(tenant, user, &MockGraphService{}, nil)
|
||||
err := c.updateCollections(context.Background(), "driveID", tt.items)
|
||||
err := c.updateCollections(ctx, "driveID", tt.items)
|
||||
tt.expect(t, err)
|
||||
assert.Equal(t, len(tt.expectedCollectionPaths), len(c.collectionMap))
|
||||
assert.Equal(t, tt.expectedItemCount, c.numItems)
|
||||
|
||||
@ -48,6 +48,9 @@ func TestItemIntegrationSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *ItemIntegrationSuite) SetupSuite() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
_, err := tester.GetRequiredEnvVars(tester.M365AcctCredEnvs...)
|
||||
require.NoError(suite.T(), err)
|
||||
|
||||
@ -63,7 +66,7 @@ func (suite *ItemIntegrationSuite) SetupSuite() {
|
||||
|
||||
suite.user = tester.M365UserID(suite.T())
|
||||
|
||||
drives, err := drives(context.TODO(), suite, suite.user)
|
||||
drives, err := drives(ctx, suite, suite.user)
|
||||
require.NoError(suite.T(), err)
|
||||
// Test Requirement 1: Need a drive
|
||||
require.Greaterf(suite.T(), len(drives), 0, "user %s does not have a drive", suite.user)
|
||||
@ -78,7 +81,8 @@ func (suite *ItemIntegrationSuite) SetupSuite() {
|
||||
// 2) It assumes the drive has a file it can use to test `driveItemReader`
|
||||
// The test checks these in below
|
||||
func (suite *ItemIntegrationSuite) TestItemReader() {
|
||||
ctx := context.TODO()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var driveItemID string
|
||||
// This item collector tries to find "a" drive item that is a file to test the reader function
|
||||
@ -122,7 +126,8 @@ func (suite *ItemIntegrationSuite) TestItemReader() {
|
||||
// It creates a new `testfolder_<timestamp` folder with a new
|
||||
// testitem_<timestamp> item and writes data to it
|
||||
func (suite *ItemIntegrationSuite) TestItemWriter() {
|
||||
ctx := context.TODO()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
root, err := suite.Client().DrivesById(suite.driveID).Root().Get(ctx, nil)
|
||||
require.NoError(suite.T(), err)
|
||||
@ -175,7 +180,8 @@ func mockDataReader(size int64) (io.Reader, int64) {
|
||||
}
|
||||
|
||||
func (suite *ItemIntegrationSuite) TestDriveGetFolder() {
|
||||
ctx := context.TODO()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
root, err := suite.Client().DrivesById(suite.driveID).Root().Get(ctx, nil)
|
||||
require.NoError(suite.T(), err)
|
||||
|
||||
@ -1,13 +1,14 @@
|
||||
package support
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
)
|
||||
|
||||
type GCStatusTestSuite struct {
|
||||
@ -51,8 +52,11 @@ func (suite *GCStatusTestSuite) TestCreateStatus() {
|
||||
}
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
result := CreateStatus(
|
||||
context.Background(),
|
||||
ctx,
|
||||
test.params.operationType,
|
||||
test.params.folders,
|
||||
CollectionMetrics{test.params.objects, test.params.success, 0},
|
||||
@ -69,8 +73,11 @@ func (suite *GCStatusTestSuite) TestCreateStatus_InvalidStatus() {
|
||||
params := statusParams{Backup, 9, 3, 13, errors.New("invalidcl")}
|
||||
|
||||
require.Panics(t, func() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
CreateStatus(
|
||||
context.Background(),
|
||||
ctx,
|
||||
params.operationType,
|
||||
params.folders,
|
||||
CollectionMetrics{
|
||||
@ -85,7 +92,9 @@ func (suite *GCStatusTestSuite) TestCreateStatus_InvalidStatus() {
|
||||
}
|
||||
|
||||
func (suite *GCStatusTestSuite) TestMergeStatus() {
|
||||
simpleContext := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
one ConnectorOperationStatus
|
||||
@ -95,7 +104,7 @@ func (suite *GCStatusTestSuite) TestMergeStatus() {
|
||||
}{
|
||||
{
|
||||
name: "Test: Status + unknown",
|
||||
one: *CreateStatus(simpleContext, Backup, 1, CollectionMetrics{1, 1, 0}, nil, ""),
|
||||
one: *CreateStatus(ctx, Backup, 1, CollectionMetrics{1, 1, 0}, nil, ""),
|
||||
two: ConnectorOperationStatus{},
|
||||
expected: statusParams{Backup, 1, 1, 1, nil},
|
||||
isIncomplete: assert.False,
|
||||
@ -103,22 +112,22 @@ func (suite *GCStatusTestSuite) TestMergeStatus() {
|
||||
{
|
||||
name: "Test: unknown + Status",
|
||||
one: ConnectorOperationStatus{},
|
||||
two: *CreateStatus(simpleContext, Backup, 1, CollectionMetrics{1, 1, 0}, nil, ""),
|
||||
two: *CreateStatus(ctx, Backup, 1, CollectionMetrics{1, 1, 0}, nil, ""),
|
||||
expected: statusParams{Backup, 1, 1, 1, nil},
|
||||
isIncomplete: assert.False,
|
||||
},
|
||||
{
|
||||
name: "Test: Successful + Successful",
|
||||
one: *CreateStatus(simpleContext, Backup, 1, CollectionMetrics{1, 1, 0}, nil, ""),
|
||||
two: *CreateStatus(simpleContext, Backup, 3, CollectionMetrics{3, 3, 0}, nil, ""),
|
||||
one: *CreateStatus(ctx, Backup, 1, CollectionMetrics{1, 1, 0}, nil, ""),
|
||||
two: *CreateStatus(ctx, Backup, 3, CollectionMetrics{3, 3, 0}, nil, ""),
|
||||
expected: statusParams{Backup, 4, 4, 4, nil},
|
||||
isIncomplete: assert.False,
|
||||
},
|
||||
{
|
||||
name: "Test: Successful + Unsuccessful",
|
||||
one: *CreateStatus(simpleContext, Backup, 13, CollectionMetrics{17, 17, 0}, nil, ""),
|
||||
one: *CreateStatus(ctx, Backup, 13, CollectionMetrics{17, 17, 0}, nil, ""),
|
||||
two: *CreateStatus(
|
||||
simpleContext,
|
||||
ctx,
|
||||
Backup,
|
||||
8,
|
||||
CollectionMetrics{
|
||||
|
||||
@ -41,7 +41,9 @@ func TestWrapperUnitSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *WrapperUnitSuite) TestCloseWithoutOpenDoesNotCrash() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
k := conn{}
|
||||
|
||||
assert.NotPanics(suite.T(), func() {
|
||||
@ -73,8 +75,10 @@ func (suite *WrapperIntegrationSuite) SetupSuite() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestRepoExistsError() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
k := NewConn(st)
|
||||
@ -88,8 +92,10 @@ func (suite *WrapperIntegrationSuite) TestRepoExistsError() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestBadProviderErrors() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
st.Provider = storage.ProviderUnknown
|
||||
@ -99,8 +105,10 @@ func (suite *WrapperIntegrationSuite) TestBadProviderErrors() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestConnectWithoutInitErrors() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
k := NewConn(st)
|
||||
@ -108,7 +116,9 @@ func (suite *WrapperIntegrationSuite) TestConnectWithoutInitErrors() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestCloseTwiceDoesNotCrash() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
|
||||
k, err := openKopiaRepo(t, ctx)
|
||||
@ -119,7 +129,9 @@ func (suite *WrapperIntegrationSuite) TestCloseTwiceDoesNotCrash() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestCloseAfterWrap() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
|
||||
k, err := openKopiaRepo(t, ctx)
|
||||
@ -150,7 +162,9 @@ func (suite *WrapperIntegrationSuite) TestOpenAfterClose() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestBadCompressorType() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
|
||||
k, err := openKopiaRepo(t, ctx)
|
||||
@ -164,7 +178,9 @@ func (suite *WrapperIntegrationSuite) TestBadCompressorType() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestGetPolicyOrDefault_GetsDefault() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
|
||||
k, err := openKopiaRepo(t, ctx)
|
||||
@ -187,7 +203,9 @@ func (suite *WrapperIntegrationSuite) TestGetPolicyOrDefault_GetsDefault() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestSetCompressor() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
compressor := "pgzip"
|
||||
|
||||
@ -280,7 +298,8 @@ func (suite *WrapperIntegrationSuite) TestConfigDefaultsSetOnInitAndConnect() {
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
k, err := openKopiaRepo(t, ctx)
|
||||
require.NoError(t, err)
|
||||
@ -309,7 +328,9 @@ func (suite *WrapperIntegrationSuite) TestConfigDefaultsSetOnInitAndConnect() {
|
||||
}
|
||||
|
||||
func (suite *WrapperIntegrationSuite) TestInitAndConnWithTempDirectory() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
|
||||
k, err := openKopiaRepo(t, ctx)
|
||||
|
||||
@ -45,8 +45,11 @@ func TestModelStoreUnitSuite(t *testing.T) {
|
||||
|
||||
func (suite *ModelStoreUnitSuite) TestCloseWithoutInitDoesNotPanic() {
|
||||
assert.NotPanics(suite.T(), func() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
m := &ModelStore{}
|
||||
m.Close(context.Background())
|
||||
m.Close(ctx)
|
||||
})
|
||||
}
|
||||
|
||||
@ -55,8 +58,9 @@ func (suite *ModelStoreUnitSuite) TestCloseWithoutInitDoesNotPanic() {
|
||||
// ---------------
|
||||
type ModelStoreIntegrationSuite struct {
|
||||
suite.Suite
|
||||
ctx context.Context
|
||||
m *ModelStore
|
||||
ctx context.Context
|
||||
m *ModelStore
|
||||
flush func()
|
||||
}
|
||||
|
||||
func TestModelStoreIntegrationSuite(t *testing.T) {
|
||||
@ -76,11 +80,12 @@ func (suite *ModelStoreIntegrationSuite) SetupSuite() {
|
||||
}
|
||||
|
||||
func (suite *ModelStoreIntegrationSuite) SetupTest() {
|
||||
suite.ctx = context.Background()
|
||||
suite.ctx, suite.flush = tester.NewContext()
|
||||
suite.m = getModelStore(suite.T(), suite.ctx)
|
||||
}
|
||||
|
||||
func (suite *ModelStoreIntegrationSuite) TearDownTest() {
|
||||
defer suite.flush()
|
||||
assert.NoError(suite.T(), suite.m.Close(suite.ctx))
|
||||
}
|
||||
|
||||
@ -584,7 +589,9 @@ func (suite *ModelStoreIntegrationSuite) TestPutUpdate() {
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
theModelType := model.BackupOpSchema
|
||||
|
||||
m := getModelStore(t, ctx)
|
||||
@ -657,7 +664,8 @@ func (suite *ModelStoreIntegrationSuite) TestPutUpdate_FailsNotMatchingPrev() {
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
m := getModelStore(t, ctx)
|
||||
defer func() {
|
||||
@ -726,7 +734,9 @@ func (suite *ModelStoreRegressionSuite) SetupSuite() {
|
||||
// Tests that if we get an error or crash while in the middle of an Update no
|
||||
// results will be visible to higher layers.
|
||||
func (suite *ModelStoreRegressionSuite) TestFailDuringWriteSessionHasNoVisibleEffect() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
|
||||
m := getModelStore(t, ctx)
|
||||
@ -823,7 +833,9 @@ func reconnectToModelStore(
|
||||
// Ensures there's no shared configuration state between different instances of
|
||||
// the ModelStore (and consequently the underlying kopia instances).
|
||||
func (suite *ModelStoreRegressionSuite) TestMultipleConfigs() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
numEntries := 10
|
||||
deets := details.DetailsModel{
|
||||
|
||||
@ -22,6 +22,7 @@ import (
|
||||
"github.com/alcionai/corso/src/internal/data"
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
"github.com/alcionai/corso/src/pkg/backup/details"
|
||||
"github.com/alcionai/corso/src/pkg/logger"
|
||||
"github.com/alcionai/corso/src/pkg/path"
|
||||
)
|
||||
|
||||
@ -477,16 +478,21 @@ func TestKopiaUnitSuite(t *testing.T) {
|
||||
|
||||
func (suite *KopiaUnitSuite) TestCloseWithoutInitDoesNotPanic() {
|
||||
assert.NotPanics(suite.T(), func() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
w := &Wrapper{}
|
||||
w.Close(context.Background())
|
||||
w.Close(ctx)
|
||||
})
|
||||
}
|
||||
|
||||
func (suite *KopiaUnitSuite) TestBuildDirectoryTree() {
|
||||
tester.LogTimeOfTest(suite.T())
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
tenant := "a-tenant"
|
||||
user1 := testUser
|
||||
user1Encoded := encodeAsPath(user1)
|
||||
@ -569,7 +575,9 @@ func (suite *KopiaUnitSuite) TestBuildDirectoryTree() {
|
||||
}
|
||||
|
||||
func (suite *KopiaUnitSuite) TestBuildDirectoryTree_MixedDirectory() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
subdir := "subfolder"
|
||||
|
||||
p2, err := suite.testPath.Append(subdir, false)
|
||||
@ -714,7 +722,8 @@ func (suite *KopiaUnitSuite) TestBuildDirectoryTree_Fails() {
|
||||
}
|
||||
|
||||
for _, test := range table {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
_, err := inflateDirTree(ctx, test.layout, nil)
|
||||
@ -728,8 +737,9 @@ func (suite *KopiaUnitSuite) TestBuildDirectoryTree_Fails() {
|
||||
// ---------------
|
||||
type KopiaIntegrationSuite struct {
|
||||
suite.Suite
|
||||
w *Wrapper
|
||||
ctx context.Context
|
||||
w *Wrapper
|
||||
ctx context.Context
|
||||
flush func()
|
||||
|
||||
testPath1 path.Path
|
||||
testPath2 path.Path
|
||||
@ -773,7 +783,7 @@ func (suite *KopiaIntegrationSuite) SetupSuite() {
|
||||
|
||||
func (suite *KopiaIntegrationSuite) SetupTest() {
|
||||
t := suite.T()
|
||||
suite.ctx = context.Background()
|
||||
suite.ctx, suite.flush = tester.NewContext()
|
||||
|
||||
c, err := openKopiaRepo(t, suite.ctx)
|
||||
require.NoError(t, err)
|
||||
@ -782,6 +792,7 @@ func (suite *KopiaIntegrationSuite) SetupTest() {
|
||||
}
|
||||
|
||||
func (suite *KopiaIntegrationSuite) TearDownTest() {
|
||||
defer suite.flush()
|
||||
assert.NoError(suite.T(), suite.w.Close(suite.ctx))
|
||||
}
|
||||
|
||||
@ -812,7 +823,9 @@ func (suite *KopiaIntegrationSuite) TestBackupCollections() {
|
||||
|
||||
func (suite *KopiaIntegrationSuite) TestRestoreAfterCompressionChange() {
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
|
||||
defer flush()
|
||||
|
||||
k, err := openKopiaRepo(t, ctx)
|
||||
require.NoError(t, err)
|
||||
@ -930,7 +943,8 @@ func (suite *KopiaIntegrationSuite) TestBackupCollectionsHandlesNoCollections()
|
||||
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
s, d, err := suite.w.BackupCollections(ctx, test.collections)
|
||||
require.NoError(t, err)
|
||||
@ -1051,7 +1065,7 @@ func (suite *KopiaSimpleRepoIntegrationSuite) SetupTest() {
|
||||
t := suite.T()
|
||||
expectedDirs := 6
|
||||
expectedFiles := len(suite.filesByPath)
|
||||
suite.ctx = context.Background()
|
||||
suite.ctx, _ = logger.SeedLevel(context.Background(), logger.Development)
|
||||
c, err := openKopiaRepo(t, suite.ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -1090,6 +1104,7 @@ func (suite *KopiaSimpleRepoIntegrationSuite) SetupTest() {
|
||||
|
||||
func (suite *KopiaSimpleRepoIntegrationSuite) TearDownTest() {
|
||||
assert.NoError(suite.T(), suite.w.Close(suite.ctx))
|
||||
logger.Flush(suite.ctx)
|
||||
}
|
||||
|
||||
type i64counter struct {
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package operations
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -34,8 +33,10 @@ func TestBackupOpSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *BackupOpSuite) TestBackupOperation_PersistResults() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var (
|
||||
ctx = context.Background()
|
||||
kw = &kopia.Wrapper{}
|
||||
sw = &store.Wrapper{}
|
||||
acct = account.Account{}
|
||||
@ -155,8 +156,11 @@ func (suite *BackupOpIntegrationSuite) TestNewBackupOperation() {
|
||||
}
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
_, err := NewBackupOperation(
|
||||
context.Background(),
|
||||
ctx,
|
||||
test.opts,
|
||||
test.kw,
|
||||
test.sw,
|
||||
@ -171,8 +175,10 @@ func (suite *BackupOpIntegrationSuite) TestNewBackupOperation() {
|
||||
// TestBackup_Run ensures that Integration Testing works
|
||||
// for the following scopes: Contacts, Events, and Mail
|
||||
func (suite *BackupOpIntegrationSuite) TestBackup_Run() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
m365UserID := tester.M365UserID(t)
|
||||
acct := tester.NewM365Account(t)
|
||||
@ -262,8 +268,10 @@ func (suite *BackupOpIntegrationSuite) TestBackup_Run() {
|
||||
}
|
||||
|
||||
func (suite *BackupOpIntegrationSuite) TestBackupOneDrive_Run() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
m365UserID := tester.M365UserID(t)
|
||||
acct := tester.NewM365Account(t)
|
||||
|
||||
@ -37,8 +37,10 @@ func TestRestoreOpSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *RestoreOpSuite) TestRestoreOperation_PersistResults() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var (
|
||||
ctx = context.Background()
|
||||
kw = &kopia.Wrapper{}
|
||||
sw = &store.Wrapper{}
|
||||
acct = account.Account{}
|
||||
@ -142,11 +144,13 @@ func TestRestoreOpIntegrationSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *RestoreOpIntegrationSuite) SetupSuite() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
_, err := tester.GetRequiredEnvVars(tester.M365AcctCredEnvs...)
|
||||
require.NoError(suite.T(), err)
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
m365UserID := tester.M365UserID(t)
|
||||
acct := tester.NewM365Account(t)
|
||||
@ -194,7 +198,9 @@ func (suite *RestoreOpIntegrationSuite) SetupSuite() {
|
||||
}
|
||||
|
||||
func (suite *RestoreOpIntegrationSuite) TearDownSuite() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
if suite.ms != nil {
|
||||
suite.ms.Close(ctx)
|
||||
}
|
||||
@ -229,8 +235,11 @@ func (suite *RestoreOpIntegrationSuite) TestNewRestoreOperation() {
|
||||
}
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
_, err := NewRestoreOperation(
|
||||
context.Background(),
|
||||
ctx,
|
||||
test.opts,
|
||||
test.kw,
|
||||
test.sw,
|
||||
@ -245,8 +254,10 @@ func (suite *RestoreOpIntegrationSuite) TestNewRestoreOperation() {
|
||||
}
|
||||
|
||||
func (suite *RestoreOpIntegrationSuite) TestRestore_Run() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
rsel := selectors.NewExchangeRestore()
|
||||
rsel.Include(rsel.Users([]string{tester.M365UserID(t)}))
|
||||
@ -285,8 +296,10 @@ func (suite *RestoreOpIntegrationSuite) TestRestore_Run() {
|
||||
}
|
||||
|
||||
func (suite *RestoreOpIntegrationSuite) TestRestore_Run_ErrorNoResults() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
rsel := selectors.NewExchangeRestore()
|
||||
rsel.Include(rsel.Users(selectors.None()))
|
||||
|
||||
@ -9,6 +9,7 @@ import (
|
||||
"github.com/spf13/cobra"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/common"
|
||||
"github.com/alcionai/corso/src/pkg/logger"
|
||||
)
|
||||
|
||||
// StubRootCmd builds a stub cobra command to be used as
|
||||
@ -31,7 +32,12 @@ func StubRootCmd(args ...string) *cobra.Command {
|
||||
return c
|
||||
}
|
||||
|
||||
func NewContext() context.Context {
|
||||
type stub struct{}
|
||||
return context.WithValue(context.Background(), stub{}, stub{})
|
||||
func NewContext() (context.Context, func()) {
|
||||
ctx, _ := logger.SeedLevel(context.Background(), logger.Development)
|
||||
return ctx, func() { logger.Flush(ctx) }
|
||||
}
|
||||
|
||||
func WithContext(ctx context.Context) (context.Context, func()) {
|
||||
ctx, _ = logger.SeedLevel(ctx, logger.Development)
|
||||
return ctx, func() { logger.Flush(ctx) }
|
||||
}
|
||||
|
||||
@ -153,10 +153,15 @@ func Seed(ctx context.Context) (ctxOut context.Context, zsl *zap.SugaredLogger)
|
||||
|
||||
// SeedLevel embeds a logger into the context with the given log-level.
|
||||
func SeedLevel(ctx context.Context, level logLevel) (context.Context, *zap.SugaredLogger) {
|
||||
_, zsl := genLogger(level)
|
||||
ctxWV := context.WithValue(ctx, ctxKey, zsl)
|
||||
l := ctx.Value(ctxKey)
|
||||
if l == nil {
|
||||
zsl := singleton(level)
|
||||
ctxWV := context.WithValue(ctx, ctxKey, zsl)
|
||||
|
||||
return ctxWV, zsl
|
||||
return ctxWV, zsl
|
||||
}
|
||||
|
||||
return ctx, l.(*zap.SugaredLogger)
|
||||
}
|
||||
|
||||
// Ctx retrieves the logger embedded in the context.
|
||||
|
||||
@ -16,7 +16,6 @@ import (
|
||||
"github.com/alcionai/corso/src/pkg/backup"
|
||||
"github.com/alcionai/corso/src/pkg/backup/details"
|
||||
"github.com/alcionai/corso/src/pkg/control"
|
||||
"github.com/alcionai/corso/src/pkg/logger"
|
||||
"github.com/alcionai/corso/src/pkg/repository"
|
||||
"github.com/alcionai/corso/src/pkg/selectors"
|
||||
"github.com/alcionai/corso/src/pkg/storage"
|
||||
@ -31,7 +30,9 @@ func initM365Repo(t *testing.T) (
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
ctx := tester.NewContext()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
ac := tester.NewM365Account(t)
|
||||
opts := control.Options{
|
||||
@ -217,18 +218,12 @@ func (suite *RepositoryLoadTestExchangeSuite) TeardownSuite() {
|
||||
suite.repo.Close(suite.ctx)
|
||||
}
|
||||
|
||||
func (suite *RepositoryLoadTestExchangeSuite) SetupTest() {
|
||||
suite.ctx, _ = logger.SeedLevel(context.Background(), logger.Development)
|
||||
}
|
||||
|
||||
func (suite *RepositoryLoadTestExchangeSuite) TeardownTest() {
|
||||
logger.Flush(suite.ctx)
|
||||
}
|
||||
|
||||
func (suite *RepositoryLoadTestExchangeSuite) TestExchange() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var (
|
||||
t = suite.T()
|
||||
ctx = context.Background()
|
||||
r = suite.repo
|
||||
service = "exchange"
|
||||
)
|
||||
@ -291,18 +286,12 @@ func (suite *RepositoryLoadTestOneDriveSuite) TeardownSuite() {
|
||||
suite.repo.Close(suite.ctx)
|
||||
}
|
||||
|
||||
func (suite *RepositoryLoadTestOneDriveSuite) SetupTest() {
|
||||
suite.ctx, _ = logger.SeedLevel(context.Background(), logger.Development)
|
||||
}
|
||||
|
||||
func (suite *RepositoryLoadTestOneDriveSuite) TeardownTest() {
|
||||
logger.Flush(suite.ctx)
|
||||
}
|
||||
|
||||
func (suite *RepositoryLoadTestOneDriveSuite) TestOneDrive() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
var (
|
||||
t = suite.T()
|
||||
ctx = context.Background()
|
||||
r = suite.repo
|
||||
service = "one_drive"
|
||||
)
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package repository_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
@ -46,9 +45,12 @@ func (suite *RepositorySuite) TestInitialize() {
|
||||
}
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
st, err := test.storage()
|
||||
assert.NoError(t, err)
|
||||
_, err = repository.Initialize(context.Background(), test.account, st, control.Options{})
|
||||
_, err = repository.Initialize(ctx, test.account, st, control.Options{})
|
||||
test.errCheck(t, err, "")
|
||||
})
|
||||
}
|
||||
@ -74,9 +76,12 @@ func (suite *RepositorySuite) TestConnect() {
|
||||
}
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
st, err := test.storage()
|
||||
assert.NoError(t, err)
|
||||
_, err = repository.Connect(context.Background(), test.account, st, control.Options{})
|
||||
_, err = repository.Connect(ctx, test.account, st, control.Options{})
|
||||
test.errCheck(t, err)
|
||||
})
|
||||
}
|
||||
@ -110,7 +115,8 @@ func (suite *RepositoryIntegrationSuite) SetupSuite() {
|
||||
}
|
||||
|
||||
func (suite *RepositoryIntegrationSuite) TestInitialize() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
@ -140,8 +146,10 @@ func (suite *RepositoryIntegrationSuite) TestInitialize() {
|
||||
}
|
||||
|
||||
func (suite *RepositoryIntegrationSuite) TestConnect() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
// need to initialize the repository before we can test connecting to it.
|
||||
st := tester.NewPrefixedS3Storage(t)
|
||||
@ -155,8 +163,10 @@ func (suite *RepositoryIntegrationSuite) TestConnect() {
|
||||
}
|
||||
|
||||
func (suite *RepositoryIntegrationSuite) TestNewBackup() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
acct := tester.NewM365Account(t)
|
||||
|
||||
@ -172,8 +182,10 @@ func (suite *RepositoryIntegrationSuite) TestNewBackup() {
|
||||
}
|
||||
|
||||
func (suite *RepositoryIntegrationSuite) TestNewRestore() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
t := suite.T()
|
||||
ctx := context.Background()
|
||||
|
||||
acct := tester.NewM365Account(t)
|
||||
dest := tester.DefaultTestRestoreDestination()
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package selectors
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -10,6 +9,7 @@ import (
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/common"
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
"github.com/alcionai/corso/src/pkg/backup/details"
|
||||
"github.com/alcionai/corso/src/pkg/filters"
|
||||
"github.com/alcionai/corso/src/pkg/path"
|
||||
@ -1129,8 +1129,11 @@ func (suite *ExchangeSelectorSuite) TestExchangeRestore_Reduce() {
|
||||
}
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
sel := test.makeSelector()
|
||||
results := sel.Reduce(context.Background(), test.deets)
|
||||
results := sel.Reduce(ctx, test.deets)
|
||||
paths := results.Paths()
|
||||
assert.Equal(t, test.expect, paths)
|
||||
})
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package selectors
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -10,6 +9,7 @@ import (
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/common"
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
"github.com/alcionai/corso/src/pkg/backup/details"
|
||||
"github.com/alcionai/corso/src/pkg/path"
|
||||
)
|
||||
@ -262,8 +262,11 @@ func (suite *OneDriveSelectorSuite) TestOneDriveRestore_Reduce() {
|
||||
}
|
||||
for _, test := range table {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
sel := test.makeSelector()
|
||||
results := sel.Reduce(context.Background(), test.deets)
|
||||
results := sel.Reduce(ctx, test.deets)
|
||||
paths := results.Paths()
|
||||
assert.Equal(t, test.expect, paths)
|
||||
})
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
package selectors
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
"github.com/alcionai/corso/src/pkg/backup/details"
|
||||
"github.com/alcionai/corso/src/pkg/filters"
|
||||
"github.com/alcionai/corso/src/pkg/path"
|
||||
@ -246,9 +246,12 @@ func (suite *SelectorScopesSuite) TestReduce() {
|
||||
|
||||
for _, test := range reduceTestTable {
|
||||
suite.T().Run(test.name, func(t *testing.T) {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
ds := deets()
|
||||
result := reduce[mockScope](
|
||||
context.Background(),
|
||||
ctx,
|
||||
&ds,
|
||||
test.sel().Selector,
|
||||
dataCats)
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package selectors_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -9,6 +8,7 @@ import (
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/common"
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
"github.com/alcionai/corso/src/pkg/backup/details"
|
||||
"github.com/alcionai/corso/src/pkg/selectors"
|
||||
"github.com/alcionai/corso/src/pkg/selectors/testdata"
|
||||
@ -23,7 +23,9 @@ func TestSelectorReduceSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *SelectorReduceSuite) TestReduce() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
allDetails := testdata.GetDetailsSet()
|
||||
table := []struct {
|
||||
name string
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package m365
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
@ -31,9 +30,12 @@ func (suite *M365IntegrationSuite) SetupSuite() {
|
||||
}
|
||||
|
||||
func (suite *M365IntegrationSuite) TestUsers() {
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
acct := tester.NewM365Account(suite.T())
|
||||
|
||||
users, err := Users(context.Background(), acct)
|
||||
users, err := Users(ctx, acct)
|
||||
require.NoError(suite.T(), err)
|
||||
|
||||
require.NotNil(suite.T(), users)
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package store_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -11,6 +10,7 @@ import (
|
||||
"github.com/stretchr/testify/suite"
|
||||
|
||||
"github.com/alcionai/corso/src/internal/model"
|
||||
"github.com/alcionai/corso/src/internal/tester"
|
||||
"github.com/alcionai/corso/src/pkg/backup"
|
||||
"github.com/alcionai/corso/src/pkg/backup/details"
|
||||
"github.com/alcionai/corso/src/pkg/store"
|
||||
@ -51,7 +51,8 @@ func TestStoreBackupUnitSuite(t *testing.T) {
|
||||
}
|
||||
|
||||
func (suite *StoreBackupUnitSuite) TestGetBackup() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
@ -83,7 +84,8 @@ func (suite *StoreBackupUnitSuite) TestGetBackup() {
|
||||
}
|
||||
|
||||
func (suite *StoreBackupUnitSuite) TestGetBackups() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
@ -116,7 +118,8 @@ func (suite *StoreBackupUnitSuite) TestGetBackups() {
|
||||
}
|
||||
|
||||
func (suite *StoreBackupUnitSuite) TestDeleteBackup() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
@ -144,7 +147,8 @@ func (suite *StoreBackupUnitSuite) TestDeleteBackup() {
|
||||
}
|
||||
|
||||
func (suite *StoreBackupUnitSuite) TestGetDetails() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
@ -176,7 +180,8 @@ func (suite *StoreBackupUnitSuite) TestGetDetails() {
|
||||
}
|
||||
|
||||
func (suite *StoreBackupUnitSuite) TestGetDetailsFromBackupID() {
|
||||
ctx := context.Background()
|
||||
ctx, flush := tester.NewContext()
|
||||
defer flush()
|
||||
|
||||
table := []struct {
|
||||
name string
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user