From cfecdb66eb1b678d4c42c7060ce0ddb28c2a9135 Mon Sep 17 00:00:00 2001 From: Vladislav Sukhin Date: Wed, 24 Jul 2024 13:52:06 +0300 Subject: [PATCH] fix: integration test sync Signed-off-by: Vladislav Sukhin --- .../sequence/mongo_integration_test.go | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 pkg/repository/sequence/mongo_integration_test.go diff --git a/pkg/repository/sequence/mongo_integration_test.go b/pkg/repository/sequence/mongo_integration_test.go new file mode 100644 index 00000000000..7fff6ff63f5 --- /dev/null +++ b/pkg/repository/sequence/mongo_integration_test.go @@ -0,0 +1,58 @@ +package sequence + +import ( + "context" + "testing" + + "github.com/kubeshop/testkube/internal/config" + "github.com/kubeshop/testkube/pkg/utils/test" + + "github.com/stretchr/testify/assert" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/mongo/options" +) + +var ( + cfg, _ = config.Get() +) + +func TestNewMongoRepository_GetNextExecutionNumber_Sequential_Integration(t *testing.T) { + test.IntegrationTest(t) + + ctx := context.Background() + + client, err := mongo.Connect(ctx, options.Client().ApplyURI(cfg.APIMongoDSN)) + if err != nil { + t.Fatalf("error connecting to mongo: %v", err) + } + db := client.Database("sequence-mongo-repository-test") + t.Cleanup(func() { + db.Drop(ctx) + }) + + repo := NewMongoRepository(db) + + num1, err := repo.GetNextExecutionNumber(ctx, "name", ExecutionTypeTest) + assert.NoError(t, err) + assert.Equal(t, 1, num1) + + num2, err := repo.GetNextExecutionNumber(ctx, "name", ExecutionTypeTest) + assert.NoError(t, err) + assert.Equal(t, 2, num2) + + num3, err := repo.GetNextExecutionNumber(ctx, "name", ExecutionTypeTestSuite) + assert.NoError(t, err) + assert.Equal(t, 1, num3) + + num4, err := repo.GetNextExecutionNumber(ctx, "name", ExecutionTypeTestSuite) + assert.NoError(t, err) + assert.Equal(t, 2, num4) + + num5, err := repo.GetNextExecutionNumber(ctx, "name", ExecutionTypeTestWorkflow) + assert.NoError(t, err) + assert.Equal(t, 1, num5) + + num6, err := repo.GetNextExecutionNumber(ctx, "name", ExecutionTypeTestWorkflow) + assert.NoError(t, err) + assert.Equal(t, 2, num6) +}