Documentation
¶
Index ¶
- Constants
- func GenerateRandomDBName(n int) string
- func NewTestClusterForCassandra(options *TestBaseOptions, logger log.Logger) *cassandra.TestCluster
- type ClusterMetadataManagerSuite
- func (s *ClusterMetadataManagerSuite) SetupSuite()
- func (s *ClusterMetadataManagerSuite) SetupTest()
- func (s *ClusterMetadataManagerSuite) TearDownSuite()
- func (s *ClusterMetadataManagerSuite) TearDownTest()
- func (s *ClusterMetadataManagerSuite) TestClusterMembershipEmptyInitially()
- func (s *ClusterMetadataManagerSuite) TestClusterMembershipReadFiltersCorrectly()
- func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertCanPageRead()
- func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertCanReadAny()
- func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertExpiresCorrectly()
- func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertInvalidExpiry()
- func (s *ClusterMetadataManagerSuite) TestInitImmutableMetadataReadWrite()
- type HistoryV2PersistenceSuite
- func (s *HistoryV2PersistenceSuite) SetupSuite()
- func (s *HistoryV2PersistenceSuite) SetupTest()
- func (s *HistoryV2PersistenceSuite) TearDownSuite()
- func (s *HistoryV2PersistenceSuite) TearDownTest()
- func (s *HistoryV2PersistenceSuite) TestConcurrentlyCreateAndAppendBranches()
- func (s *HistoryV2PersistenceSuite) TestConcurrentlyForkAndAppendBranches()
- func (s *HistoryV2PersistenceSuite) TestGenUUIDs()
- func (s *HistoryV2PersistenceSuite) TestReadBranchByPagination()
- func (s *HistoryV2PersistenceSuite) TestScanAllTrees()
- type MetadataPersistenceSuiteV2
- func (m *MetadataPersistenceSuiteV2) CreateNamespace(info *persistencespb.NamespaceInfo, config *persistencespb.NamespaceConfig, ...) (*p.CreateNamespaceResponse, error)
- func (m *MetadataPersistenceSuiteV2) DeleteNamespace(id string, name string) error
- func (m *MetadataPersistenceSuiteV2) GetNamespace(id string, name string) (*p.GetNamespaceResponse, error)
- func (m *MetadataPersistenceSuiteV2) ListNamespaces(pageSize int, pageToken []byte) (*p.ListNamespacesResponse, error)
- func (m *MetadataPersistenceSuiteV2) SetupSuite()
- func (m *MetadataPersistenceSuiteV2) SetupTest()
- func (m *MetadataPersistenceSuiteV2) TearDownSuite()
- func (m *MetadataPersistenceSuiteV2) TearDownTest()
- func (m *MetadataPersistenceSuiteV2) TestCASFailureUpdateNamespace()
- func (m *MetadataPersistenceSuiteV2) TestConcurrentCreateNamespace()
- func (m *MetadataPersistenceSuiteV2) TestConcurrentUpdateNamespace()
- func (m *MetadataPersistenceSuiteV2) TestCreateNamespace()
- func (m *MetadataPersistenceSuiteV2) TestCreateNamespaceWithDuplicateID()
- func (m *MetadataPersistenceSuiteV2) TestCreateNamespaceWithDuplicateName()
- func (m *MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceDifferentNameSameID()
- func (m *MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceSameNameDifferentID()
- func (m *MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceSameNameSameID()
- func (m *MetadataPersistenceSuiteV2) TestDeleteNamespace()
- func (m *MetadataPersistenceSuiteV2) TestDeleteNamespaceIdempotency()
- func (m *MetadataPersistenceSuiteV2) TestGetMetadataVersionIncrement()
- func (m *MetadataPersistenceSuiteV2) TestGetNamespace()
- func (m *MetadataPersistenceSuiteV2) TestInitializeSystemNamespaces()
- func (m *MetadataPersistenceSuiteV2) TestListNamespaces()
- func (m *MetadataPersistenceSuiteV2) TestListNamespaces_DeletedNamespace()
- func (m *MetadataPersistenceSuiteV2) TestRenameNamespace()
- func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceCassandra()
- func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceNotFound()
- func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceSQL()
- func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceWithNameConflict()
- func (m *MetadataPersistenceSuiteV2) TestUpdateNamespace()
- func (m *MetadataPersistenceSuiteV2) TestUpdateNamespaceNotFound()
- func (m *MetadataPersistenceSuiteV2) UpdateNamespace(info *persistencespb.NamespaceInfo, config *persistencespb.NamespaceConfig, ...) error
- type PersistenceTestCluster
- type QueuePersistenceSuite
- func (s *QueuePersistenceSuite) SetupSuite()
- func (s *QueuePersistenceSuite) SetupTest()
- func (s *QueuePersistenceSuite) TearDownSuite()
- func (s *QueuePersistenceSuite) TearDownTest()
- func (s *QueuePersistenceSuite) TestNamespaceDLQMetadataOperations()
- func (s *QueuePersistenceSuite) TestNamespaceReplicationDLQ()
- func (s *QueuePersistenceSuite) TestNamespaceReplicationQueue()
- func (s *QueuePersistenceSuite) TestQueueMetadataOperations()
- type TestBase
- func (s *TestBase) DeleteMessageFromNamespaceDLQ(ctx context.Context, messageID int64) error
- func (s *TestBase) EqualTimes(t1, t2 time.Time)
- func (s *TestBase) EqualTimesWithPrecision(t1, t2 time.Time, precision time.Duration)
- func (s *TestBase) GetAckLevels(ctx context.Context) (map[string]int64, error)
- func (s *TestBase) GetMessagesFromNamespaceDLQ(ctx context.Context, firstMessageID int64, lastMessageID int64, pageSize int, ...) ([]*replicationspb.ReplicationTask, []byte, error)
- func (s *TestBase) GetNamespaceDLQAckLevel(ctx context.Context) (int64, error)
- func (s *TestBase) GetReplicationMessages(ctx context.Context, lastMessageID int64, pageSize int) ([]*replicationspb.ReplicationTask, int64, error)
- func (s *TestBase) Publish(ctx context.Context, task *replicationspb.ReplicationTask) error
- func (s *TestBase) PublishToNamespaceDLQ(ctx context.Context, task *replicationspb.ReplicationTask) error
- func (s *TestBase) RangeDeleteMessagesFromNamespaceDLQ(ctx context.Context, firstMessageID int64, lastMessageID int64) error
- func (s *TestBase) Setup(clusterMetadataConfig *cluster.Config)
- func (s *TestBase) TearDownWorkflowStore()
- func (s *TestBase) UpdateAckLevel(ctx context.Context, lastProcessedMessageID int64, clusterName string) error
- func (s *TestBase) UpdateNamespaceDLQAckLevel(ctx context.Context, lastProcessedMessageID int64) error
- type TestBaseOptions
- func GetCassandraTestClusterOption() *TestBaseOptions
- func GetMySQLTestClusterOption() *TestBaseOptions
- func GetPostgreSQLPGXTestClusterOption() *TestBaseOptions
- func GetPostgreSQLTestClusterOption() *TestBaseOptions
- func GetSQLiteFileTestClusterOption() *TestBaseOptions
- func GetSQLiteMemoryTestClusterOption() *TestBaseOptions
- func GetTestClusterOption(storeType, driver string) *TestBaseOptions
- type TestTransferTaskIDGenerator
- type TransferTaskIDGenerator
Constants ¶
const TimePrecision = 2 * time.Millisecond
TimePrecision is needed to account for database timestamp precision. Cassandra only provides milliseconds timestamp precision, so we need to use tolerance when doing comparison
Variables ¶
This section is empty.
Functions ¶
func GenerateRandomDBName ¶
GenerateRandomDBName helper Format: MMDDHHMMSS_abc
func NewTestClusterForCassandra ¶ added in v1.2.0
func NewTestClusterForCassandra(options *TestBaseOptions, logger log.Logger) *cassandra.TestCluster
Types ¶
type ClusterMetadataManagerSuite ¶ added in v1.2.0
type ClusterMetadataManagerSuite struct {
*TestBase
// override suite.Suite.Assertions with require.Assertions; this means that s.NotNil(nil) will stop the test,
// not merely log an error
*require.Assertions
// contains filtered or unexported fields
}
ClusterMetadataManagerSuite runs tests that cover the ClusterMetadata read/write scenarios
func (*ClusterMetadataManagerSuite) SetupSuite ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) SetupSuite()
SetupSuite implementation
func (*ClusterMetadataManagerSuite) SetupTest ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) SetupTest()
SetupTest implementation
func (*ClusterMetadataManagerSuite) TearDownSuite ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TearDownSuite()
TearDownSuite implementation
func (*ClusterMetadataManagerSuite) TearDownTest ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TearDownTest()
TearDownTest implementation
func (*ClusterMetadataManagerSuite) TestClusterMembershipEmptyInitially ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TestClusterMembershipEmptyInitially()
TestClusterMembershipEmptyInitially verifies the GetClusterMembers() works with an initial empty table
func (*ClusterMetadataManagerSuite) TestClusterMembershipReadFiltersCorrectly ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TestClusterMembershipReadFiltersCorrectly()
TestClusterMembershipReadFiltersCorrectly verifies that we can UpsertClusterMembership and read our result using filters
func (*ClusterMetadataManagerSuite) TestClusterMembershipUpsertCanPageRead ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertCanPageRead()
TestClusterMembershipUpsertCanPageRead verifies that we can UpsertClusterMembership and read our result
func (*ClusterMetadataManagerSuite) TestClusterMembershipUpsertCanReadAny ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertCanReadAny()
TestClusterMembershipUpsertCanReadAny verifies that we can UpsertClusterMembership and read our result
func (*ClusterMetadataManagerSuite) TestClusterMembershipUpsertExpiresCorrectly ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertExpiresCorrectly()
TestClusterMembershipUpsertExpiresCorrectly verifies RecordExpiry functions properly for ClusterMembership records
func (*ClusterMetadataManagerSuite) TestClusterMembershipUpsertInvalidExpiry ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TestClusterMembershipUpsertInvalidExpiry()
TestClusterMembershipUpsertInvalidExpiry verifies we cannot specify a non-positive RecordExpiry duration
func (*ClusterMetadataManagerSuite) TestInitImmutableMetadataReadWrite ¶ added in v1.2.0
func (s *ClusterMetadataManagerSuite) TestInitImmutableMetadataReadWrite()
TestInitImmutableMetadataReadWrite runs through the various cases of ClusterMetadata behavior Cases: 1 - Get, no data persisted 2 - Init, no data persisted 3 - Get, data persisted 4 - Init, data persisted 5 - Update, add version info and make sure it's persisted and can be retrieved. 6 - Delete, no data persisted
type HistoryV2PersistenceSuite ¶ added in v0.5.0
type HistoryV2PersistenceSuite struct {
// suite.Suite
*TestBase
// override suite.Suite.Assertions with require.Assertions; this means that s.NotNil(nil) will stop the test,
// not merely log an error
*require.Assertions
protorequire.ProtoAssertions
// contains filtered or unexported fields
}
HistoryV2PersistenceSuite contains history persistence tests
func (*HistoryV2PersistenceSuite) SetupSuite ¶ added in v0.5.0
func (s *HistoryV2PersistenceSuite) SetupSuite()
SetupSuite implementation
func (*HistoryV2PersistenceSuite) SetupTest ¶ added in v0.5.0
func (s *HistoryV2PersistenceSuite) SetupTest()
SetupTest implementation
func (*HistoryV2PersistenceSuite) TearDownSuite ¶ added in v0.5.0
func (s *HistoryV2PersistenceSuite) TearDownSuite()
TearDownSuite implementation
func (*HistoryV2PersistenceSuite) TearDownTest ¶ added in v1.2.0
func (s *HistoryV2PersistenceSuite) TearDownTest()
TearDownTest implementation
func (*HistoryV2PersistenceSuite) TestConcurrentlyCreateAndAppendBranches ¶ added in v0.5.0
func (s *HistoryV2PersistenceSuite) TestConcurrentlyCreateAndAppendBranches()
TestConcurrentlyCreateAndAppendBranches test
func (*HistoryV2PersistenceSuite) TestConcurrentlyForkAndAppendBranches ¶ added in v0.5.0
func (s *HistoryV2PersistenceSuite) TestConcurrentlyForkAndAppendBranches()
TestConcurrentlyForkAndAppendBranches test
func (*HistoryV2PersistenceSuite) TestGenUUIDs ¶ added in v0.5.0
func (s *HistoryV2PersistenceSuite) TestGenUUIDs()
TestGenUUIDs testing uuid.NewString() can generate unique UUID
func (*HistoryV2PersistenceSuite) TestReadBranchByPagination ¶ added in v0.5.7
func (s *HistoryV2PersistenceSuite) TestReadBranchByPagination()
TestReadBranchByPagination test
func (*HistoryV2PersistenceSuite) TestScanAllTrees ¶ added in v1.2.0
func (s *HistoryV2PersistenceSuite) TestScanAllTrees()
TestScanAllTrees test
type MetadataPersistenceSuiteV2 ¶
type MetadataPersistenceSuiteV2 struct {
*TestBase
// override suite.Suite.Assertions with require.Assertions; this means that s.NotNil(nil) will stop the test,
// not merely log an error
*require.Assertions
protorequire.ProtoAssertions
// contains filtered or unexported fields
}
MetadataPersistenceSuiteV2 is test of the V2 version of metadata persistence
func (*MetadataPersistenceSuiteV2) CreateNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) CreateNamespace(info *persistencespb.NamespaceInfo, config *persistencespb.NamespaceConfig, replicationConfig *persistencespb.NamespaceReplicationConfig, isGlobalnamespace bool, configVersion int64, failoverVersion int64) (*p.CreateNamespaceResponse, error)
CreateNamespace helper method
func (*MetadataPersistenceSuiteV2) DeleteNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) DeleteNamespace(id string, name string) error
DeleteNamespace helper method
func (*MetadataPersistenceSuiteV2) GetNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) GetNamespace(id string, name string) (*p.GetNamespaceResponse, error)
GetNamespace helper method
func (*MetadataPersistenceSuiteV2) ListNamespaces ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) ListNamespaces(pageSize int, pageToken []byte) (*p.ListNamespacesResponse, error)
ListNamespaces helper method
func (*MetadataPersistenceSuiteV2) SetupSuite ¶
func (m *MetadataPersistenceSuiteV2) SetupSuite()
SetupSuite implementation
func (*MetadataPersistenceSuiteV2) SetupTest ¶
func (m *MetadataPersistenceSuiteV2) SetupTest()
SetupTest implementation
func (*MetadataPersistenceSuiteV2) TearDownSuite ¶
func (m *MetadataPersistenceSuiteV2) TearDownSuite()
TearDownSuite implementation
func (*MetadataPersistenceSuiteV2) TearDownTest ¶
func (m *MetadataPersistenceSuiteV2) TearDownTest()
TearDownTest implementation
func (*MetadataPersistenceSuiteV2) TestCASFailureUpdateNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestCASFailureUpdateNamespace()
TestCASFailureUpdateNamespace tests CAS failure when trying to update a namespace
func (*MetadataPersistenceSuiteV2) TestConcurrentCreateNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestConcurrentCreateNamespace()
TestConcurrentCreateNamespace test
func (*MetadataPersistenceSuiteV2) TestConcurrentUpdateNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestConcurrentUpdateNamespace()
TestConcurrentUpdateNamespace test
func (*MetadataPersistenceSuiteV2) TestCreateNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestCreateNamespace()
TestCreateNamespace test
func (*MetadataPersistenceSuiteV2) TestCreateNamespaceWithDuplicateID ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestCreateNamespaceWithDuplicateID()
TestCreateNamespaceWithDuplicateID tests creating a namespace with an ID that already exists
func (*MetadataPersistenceSuiteV2) TestCreateNamespaceWithDuplicateName ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestCreateNamespaceWithDuplicateName()
TestCreateNamespaceWithDuplicateName tests creating a namespace with a name that already exists
func (*MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceDifferentNameSameID ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceDifferentNameSameID()
func (*MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceSameNameDifferentID ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceSameNameDifferentID()
func (*MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceSameNameSameID ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestCreateWithPartialNamespaceSameNameSameID()
func (*MetadataPersistenceSuiteV2) TestDeleteNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestDeleteNamespace()
TestDeleteNamespace test
func (*MetadataPersistenceSuiteV2) TestDeleteNamespaceIdempotency ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestDeleteNamespaceIdempotency()
TestDeleteNamespaceIdempotency tests that delete operations are idempotent
func (*MetadataPersistenceSuiteV2) TestGetMetadataVersionIncrement ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestGetMetadataVersionIncrement()
TestGetMetadataVersionIncrement tests that GetMetadata correctly increments the version after a namespace is created
func (*MetadataPersistenceSuiteV2) TestGetNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestGetNamespace()
TestGetNamespace test
func (*MetadataPersistenceSuiteV2) TestInitializeSystemNamespaces ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestInitializeSystemNamespaces()
TestInitializeSystemNamespaces tests the initialization of system namespaces
func (*MetadataPersistenceSuiteV2) TestListNamespaces ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestListNamespaces()
TestListNamespaces test
func (*MetadataPersistenceSuiteV2) TestListNamespaces_DeletedNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestListNamespaces_DeletedNamespace()
func (*MetadataPersistenceSuiteV2) TestRenameNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestRenameNamespace()
func (*MetadataPersistenceSuiteV2) TestRenameNamespaceCassandra ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceCassandra()
TestRenameNamespaceCassandra tests Cassandra-specific RenameNamespace behavior This test verifies the two-step non-atomic rename operation in Cassandra
func (*MetadataPersistenceSuiteV2) TestRenameNamespaceNotFound ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceNotFound()
TestRenameNamespaceNotFound tests renaming a non-existent namespace
func (*MetadataPersistenceSuiteV2) TestRenameNamespaceSQL ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceSQL()
TestRenameNamespaceSQL tests SQL RenameNamespace behavior This test verifies the atomic transaction-based rename operation in SQL databases
func (*MetadataPersistenceSuiteV2) TestRenameNamespaceWithNameConflict ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestRenameNamespaceWithNameConflict()
TestRenameNamespaceWithNameConflict tests name conflict when trying to rename a namespace
func (*MetadataPersistenceSuiteV2) TestUpdateNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestUpdateNamespace()
TestUpdateNamespace test
func (*MetadataPersistenceSuiteV2) TestUpdateNamespaceNotFound ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) TestUpdateNamespaceNotFound()
TestUpdateNamespaceNotFound tests updating a non-existent namespace
func (*MetadataPersistenceSuiteV2) UpdateNamespace ¶ added in v1.2.0
func (m *MetadataPersistenceSuiteV2) UpdateNamespace( info *persistencespb.NamespaceInfo, config *persistencespb.NamespaceConfig, replicationConfig *persistencespb.NamespaceReplicationConfig, configVersion int64, failoverVersion int64, failoverNotificationVersion int64, failoverEndTime time.Time, notificationVersion int64, isGlobalNamespace bool, ) error
UpdateNamespace helper method
type PersistenceTestCluster ¶
type PersistenceTestCluster interface {
SetupTestDatabase()
TearDownTestDatabase()
Config() config.Persistence
}
PersistenceTestCluster exposes management operations on a database
type QueuePersistenceSuite ¶ added in v1.2.0
type QueuePersistenceSuite struct {
*TestBase
// override suite.Suite.Assertions with require.Assertions; this means that s.NotNil(nil) will stop the test,
// not merely log an error
*require.Assertions
// contains filtered or unexported fields
}
QueuePersistenceSuite contains queue persistence tests
func (*QueuePersistenceSuite) SetupSuite ¶ added in v1.2.0
func (s *QueuePersistenceSuite) SetupSuite()
SetupSuite implementation
func (*QueuePersistenceSuite) SetupTest ¶ added in v1.2.0
func (s *QueuePersistenceSuite) SetupTest()
SetupTest implementation
func (*QueuePersistenceSuite) TearDownSuite ¶ added in v1.2.0
func (s *QueuePersistenceSuite) TearDownSuite()
TearDownSuite implementation
func (*QueuePersistenceSuite) TearDownTest ¶ added in v1.2.0
func (s *QueuePersistenceSuite) TearDownTest()
func (*QueuePersistenceSuite) TestNamespaceDLQMetadataOperations ¶ added in v1.2.0
func (s *QueuePersistenceSuite) TestNamespaceDLQMetadataOperations()
TestNamespaceDLQMetadataOperations tests queue metadata operations
func (*QueuePersistenceSuite) TestNamespaceReplicationDLQ ¶ added in v1.2.0
func (s *QueuePersistenceSuite) TestNamespaceReplicationDLQ()
TestNamespaceReplicationDLQ tests namespace DLQ operations
func (*QueuePersistenceSuite) TestNamespaceReplicationQueue ¶ added in v1.2.0
func (s *QueuePersistenceSuite) TestNamespaceReplicationQueue()
TestNamespaceReplicationQueue tests namespace replication queue operations
func (*QueuePersistenceSuite) TestQueueMetadataOperations ¶ added in v1.2.0
func (s *QueuePersistenceSuite) TestQueueMetadataOperations()
TestQueueMetadataOperations tests queue metadata operations
type TestBase ¶
type TestBase struct {
suite.Suite
ShardMgr persistence.ShardManager
AbstractDataStoreFactory client.AbstractDataStoreFactory
VisibilityStoreFactory visibility.VisibilityStoreFactory
Factory client.Factory
ExecutionManager persistence.ExecutionManager
TaskMgr persistence.TaskManager
FairTaskMgr persistence.FairTaskManager
ClusterMetadataManager persistence.ClusterMetadataManager
MetadataManager persistence.MetadataManager
NamespaceReplicationQueue persistence.NamespaceReplicationQueue
NexusEndpointManager persistence.NexusEndpointManager
ShardInfo *persistencespb.ShardInfo
TaskIDGenerator TransferTaskIDGenerator
ClusterMetadata cluster.Metadata
SearchAttributesManager searchattribute.Manager
PersistenceRateLimiter quotas.RequestRateLimiter
PersistenceHealthSignals persistence.HealthSignalAggregator
ReadLevel int64
ReplicationReadLevel int64
DefaultTestCluster PersistenceTestCluster
Logger log.Logger
TracerProvider trace.TracerProvider
}
TestBase wraps the base setup needed to create workflows over persistence layer.
func NewTestBase ¶ added in v0.5.7
func NewTestBase(options *TestBaseOptions) *TestBase
NewTestBase returns a persistence test base backed by either cassandra or sql
func NewTestBaseForCluster ¶ added in v1.2.0
func NewTestBaseForCluster(testCluster PersistenceTestCluster, logger log.Logger) *TestBase
func NewTestBaseWithCassandra ¶
func NewTestBaseWithCassandra(options *TestBaseOptions) *TestBase
NewTestBaseWithCassandra returns a persistence test base backed by cassandra datastore
func NewTestBaseWithSQL ¶
func NewTestBaseWithSQL(options *TestBaseOptions) *TestBase
NewTestBaseWithSQL returns a new persistence test base backed by SQL
func (*TestBase) DeleteMessageFromNamespaceDLQ ¶ added in v1.2.0
DeleteMessageFromNamespaceDLQ deletes one message from namespace DLQ
func (*TestBase) EqualTimes ¶
EqualTimes assertion that two times are equal within two millisecond precision
func (*TestBase) EqualTimesWithPrecision ¶
EqualTimesWithPrecision assertion that two times are equal within precision
func (*TestBase) GetAckLevels ¶ added in v1.2.0
GetAckLevels returns replication queue ack levels
func (*TestBase) GetMessagesFromNamespaceDLQ ¶ added in v1.2.0
func (s *TestBase) GetMessagesFromNamespaceDLQ( ctx context.Context, firstMessageID int64, lastMessageID int64, pageSize int, pageToken []byte, ) ([]*replicationspb.ReplicationTask, []byte, error)
GetMessagesFromNamespaceDLQ is a utility method to get messages from the namespace DLQ
func (*TestBase) GetNamespaceDLQAckLevel ¶ added in v1.2.0
GetNamespaceDLQAckLevel returns namespace dlq ack level
func (*TestBase) GetReplicationMessages ¶ added in v1.2.0
func (s *TestBase) GetReplicationMessages( ctx context.Context, lastMessageID int64, pageSize int, ) ([]*replicationspb.ReplicationTask, int64, error)
GetReplicationMessages is a utility method to get messages from the queue
func (*TestBase) Publish ¶ added in v1.2.0
func (s *TestBase) Publish(ctx context.Context, task *replicationspb.ReplicationTask) error
Publish is a utility method to add messages to the queue
func (*TestBase) PublishToNamespaceDLQ ¶ added in v1.2.0
func (s *TestBase) PublishToNamespaceDLQ(ctx context.Context, task *replicationspb.ReplicationTask) error
PublishToNamespaceDLQ is a utility method to add messages to the namespace DLQ
func (*TestBase) RangeDeleteMessagesFromNamespaceDLQ ¶ added in v1.2.0
func (s *TestBase) RangeDeleteMessagesFromNamespaceDLQ( ctx context.Context, firstMessageID int64, lastMessageID int64, ) error
RangeDeleteMessagesFromNamespaceDLQ deletes messages from namespace DLQ
func (*TestBase) TearDownWorkflowStore ¶
func (s *TestBase) TearDownWorkflowStore()
TearDownWorkflowStore to cleanup
type TestBaseOptions ¶
type TestBaseOptions struct {
SQLDBPluginName string
DBName string
DBUsername string
DBPassword string
DBHost string
DBPort int `yaml:"-"`
ConnectAttributes map[string]string
StoreType string `yaml:"-"`
SchemaDir string `yaml:"-"`
FaultInjection *config.FaultInjection
Logger log.Logger `yaml:"-"`
}
TestBaseOptions options to configure workflow test base.
func GetCassandraTestClusterOption ¶ added in v1.2.0
func GetCassandraTestClusterOption() *TestBaseOptions
GetCassandraTestClusterOption returns test options
func GetMySQLTestClusterOption ¶ added in v1.2.0
func GetMySQLTestClusterOption() *TestBaseOptions
GetMySQLTestClusterOption return test options
func GetPostgreSQLPGXTestClusterOption ¶ added in v1.2.0
func GetPostgreSQLPGXTestClusterOption() *TestBaseOptions
GetPostgreSQLPGXTestClusterOption return test options
func GetPostgreSQLTestClusterOption ¶ added in v1.2.0
func GetPostgreSQLTestClusterOption() *TestBaseOptions
GetPostgreSQLTestClusterOption return test options
func GetSQLiteFileTestClusterOption ¶ added in v1.2.0
func GetSQLiteFileTestClusterOption() *TestBaseOptions
GetSQLiteFileTestClusterOption return test options
func GetSQLiteMemoryTestClusterOption ¶ added in v1.2.0
func GetSQLiteMemoryTestClusterOption() *TestBaseOptions
GetSQLiteMemoryTestClusterOption return test options
func GetTestClusterOption ¶ added in v1.2.0
func GetTestClusterOption(storeType, driver string) *TestBaseOptions
GetTestClusterOption returns test options for the given store type and driver.
func (*TestBaseOptions) ApplyDefaults ¶ added in v1.2.0
func (o *TestBaseOptions) ApplyDefaults(src *TestBaseOptions)
ApplyDefaults copies database configuration from src, preserving any non-zero values already set.
type TestTransferTaskIDGenerator ¶
type TestTransferTaskIDGenerator struct {
// contains filtered or unexported fields
}
TestTransferTaskIDGenerator helper
func (*TestTransferTaskIDGenerator) GenerateTransferTaskID ¶ added in v0.7.0
func (g *TestTransferTaskIDGenerator) GenerateTransferTaskID() (int64, error)
GenerateTransferTaskID helper
type TransferTaskIDGenerator ¶
TransferTaskIDGenerator generates IDs for transfer tasks written by helper methods