From 1e813cfc0ab7905d9fcbff85d906fbe4092b5ba0 Mon Sep 17 00:00:00 2001 From: Artem Gavrilov Date: Thu, 9 Nov 2023 13:00:23 +0200 Subject: [PATCH] PMM-7 Fix compatibility service tests (#2608) * PMM-7 Fix compatibility service tests * PMM-7 fix postgresql version test. --------- Co-authored-by: Nurlan Moldomurov --- managed/models/postgresql_version_test.go | 16 +++++++++------- .../backup/compatibility_service_test.go | 6 +++--- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/managed/models/postgresql_version_test.go b/managed/models/postgresql_version_test.go index 98828bba84..1a739269d5 100644 --- a/managed/models/postgresql_version_test.go +++ b/managed/models/postgresql_version_test.go @@ -28,12 +28,6 @@ import ( func TestGetPostgreSQLVersion(t *testing.T) { t.Parallel() - sqlDB, mock, err := sqlmock.New() - require.NoError(t, err) - t.Cleanup(func() { sqlDB.Close() }) //nolint:errcheck - - q := reform.NewDB(sqlDB, postgresql.Dialect, reform.NewPrintfLogger(t.Logf)).WithTag("pmm-agent:postgresqlversion") - ctx := context.Background() testCases := []struct { name string @@ -79,8 +73,16 @@ func TestGetPostgreSQLVersion(t *testing.T) { tc := tc t.Run(tc.name, func(t *testing.T) { t.Parallel() + + sqlDB, mock, err := sqlmock.New() + require.NoError(t, err) + t.Cleanup(func() { sqlDB.Close() }) //nolint:errcheck + + q := reform.NewDB(sqlDB, postgresql.Dialect, reform.NewPrintfLogger(t.Logf)).WithTag("pmm-agent:postgresqlversion") + ctx := context.Background() + for _, version := range tc.mockedData { - mock.ExpectQuery("SELECT"). + mock.ExpectQuery("SELECT version()"). WillReturnRows(sqlmock.NewRows(column).AddRow(version)) } diff --git a/managed/services/backup/compatibility_service_test.go b/managed/services/backup/compatibility_service_test.go index 4859073fd8..e49f00805a 100644 --- a/managed/services/backup/compatibility_service_test.go +++ b/managed/services/backup/compatibility_service_test.go @@ -32,8 +32,6 @@ import ( func TestCheckCompatibility(t *testing.T) { t.Parallel() - mockVersioner := mockVersioner{} - cSvc := NewCompatibilityService(nil, &mockVersioner) agentModel := models.Agent{AgentID: "test_agent_id"} @@ -194,7 +192,9 @@ func TestCheckCompatibility(t *testing.T) { sw = mongoSoftware default: // just to satisfy linters } + mockVersioner := mockVersioner{} mockVersioner.On("GetVersions", agentModel.AgentID, sw).Return(tc.versions, nil).Once() + cSvc := NewCompatibilityService(nil, &mockVersioner) dbVersion, err := cSvc.checkCompatibility(&models.Service{ServiceType: tc.serviceType}, &agentModel) if tc.expectedError != nil { assert.ErrorIs(t, err, tc.expectedError) @@ -203,9 +203,9 @@ func TestCheckCompatibility(t *testing.T) { assert.NoError(t, err) assert.Equal(t, tc.versions[0].Version, dbVersion) } + mock.AssertExpectationsForObjects(t, &mockVersioner) }) } - mock.AssertExpectationsForObjects(t, &mockVersioner) } func TestFindCompatibleServiceIDs(t *testing.T) {