From 43379a7f53e13148696a7df29c55f9988fc113c6 Mon Sep 17 00:00:00 2001 From: Jakub Michalak Date: Wed, 22 May 2024 13:20:25 +0200 Subject: [PATCH 1/2] fix: Fix failing integration tests Some tests failed in https://github.com/Snowflake-Labs/terraform-provider-snowflake/actions/runs/9187815690/job/25266290438?pr=2830. This probably happened because more resources were returned by Show. This change removes slice length asserts in failing tests. The asserts are still correct because expected elements are being found and asserted. --- pkg/sdk/testint/grants_integration_test.go | 8 +++----- .../testint/row_access_policies_gen_integration_test.go | 1 - 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/pkg/sdk/testint/grants_integration_test.go b/pkg/sdk/testint/grants_integration_test.go index 6f7b546283..6bdb3614ef 100644 --- a/pkg/sdk/testint/grants_integration_test.go +++ b/pkg/sdk/testint/grants_integration_test.go @@ -179,9 +179,9 @@ func TestInt_GrantAndRevokePrivilegesToAccountRole(t *testing.T) { }, }) require.NoError(t, err) - assert.Equal(t, 1, len(grants)) - assert.Equal(t, sdk.SchemaObjectPrivilegeSelect.String(), grants[0].Privilege) - assert.Equal(t, tableTest.ID().FullyQualifiedName(), grants[0].Name.FullyQualifiedName()) + selectPrivilege, err := collections.FindOne[sdk.Grant](grants, func(g sdk.Grant) bool { return g.Privilege == sdk.SchemaObjectPrivilegeSelect.String() }) + require.NoError(t, err) + assert.Equal(t, tableTest.ID().FullyQualifiedName(), selectPrivilege.Name.FullyQualifiedName()) // now revoke and verify that the grant(s) are gone err = client.Grants.RevokePrivilegesFromAccountRole(ctx, privileges, on, roleTest.ID(), nil) @@ -511,8 +511,6 @@ func TestInt_GrantAndRevokePrivilegesToDatabaseRole(t *testing.T) { }) require.NoError(t, err) // Expecting two grants because database role has usage on database by default - require.Equal(t, 2, len(returnedGrants)) - usagePrivilege, err := collections.FindOne[sdk.Grant](returnedGrants, func(g sdk.Grant) bool { return g.Privilege == sdk.AccountObjectPrivilegeUsage.String() }) require.NoError(t, err) assert.Equal(t, sdk.ObjectTypeDatabaseRole, usagePrivilege.GrantedTo) diff --git a/pkg/sdk/testint/row_access_policies_gen_integration_test.go b/pkg/sdk/testint/row_access_policies_gen_integration_test.go index 91c454aae2..d0be5239ad 100644 --- a/pkg/sdk/testint/row_access_policies_gen_integration_test.go +++ b/pkg/sdk/testint/row_access_policies_gen_integration_test.go @@ -242,7 +242,6 @@ func TestInt_RowAccessPolicies(t *testing.T) { returnedRowAccessPolicies, err := client.RowAccessPolicies.Show(ctx, showRequest) require.NoError(t, err) - assert.Equal(t, 2, len(returnedRowAccessPolicies)) assert.Contains(t, returnedRowAccessPolicies, *rowAccessPolicy1) assert.Contains(t, returnedRowAccessPolicies, *rowAccessPolicy2) }) From a8e8007e2404e212baad0307ad64579e9b95c67d Mon Sep 17 00:00:00 2001 From: Jakub Michalak Date: Wed, 22 May 2024 13:50:22 +0200 Subject: [PATCH 2/2] Restore len asserts --- pkg/sdk/testint/grants_integration_test.go | 1 + pkg/sdk/testint/row_access_policies_gen_integration_test.go | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/pkg/sdk/testint/grants_integration_test.go b/pkg/sdk/testint/grants_integration_test.go index 6bdb3614ef..118a265514 100644 --- a/pkg/sdk/testint/grants_integration_test.go +++ b/pkg/sdk/testint/grants_integration_test.go @@ -511,6 +511,7 @@ func TestInt_GrantAndRevokePrivilegesToDatabaseRole(t *testing.T) { }) require.NoError(t, err) // Expecting two grants because database role has usage on database by default + require.LessOrEqual(t, 2, len(returnedGrants)) usagePrivilege, err := collections.FindOne[sdk.Grant](returnedGrants, func(g sdk.Grant) bool { return g.Privilege == sdk.AccountObjectPrivilegeUsage.String() }) require.NoError(t, err) assert.Equal(t, sdk.ObjectTypeDatabaseRole, usagePrivilege.GrantedTo) diff --git a/pkg/sdk/testint/row_access_policies_gen_integration_test.go b/pkg/sdk/testint/row_access_policies_gen_integration_test.go index d0be5239ad..a0874c75cb 100644 --- a/pkg/sdk/testint/row_access_policies_gen_integration_test.go +++ b/pkg/sdk/testint/row_access_policies_gen_integration_test.go @@ -241,7 +241,7 @@ func TestInt_RowAccessPolicies(t *testing.T) { showRequest := sdk.NewShowRowAccessPolicyRequest() returnedRowAccessPolicies, err := client.RowAccessPolicies.Show(ctx, showRequest) require.NoError(t, err) - + require.LessOrEqual(t, 2, len(returnedRowAccessPolicies)) assert.Contains(t, returnedRowAccessPolicies, *rowAccessPolicy1) assert.Contains(t, returnedRowAccessPolicies, *rowAccessPolicy2) })