Skip to content
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions eng/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -58,15 +58,15 @@
},
{
"Name": "keyvault/azcertificates",
"CoverageGoal": 0.80
"CoverageGoal": 0.70
},
{
"Name": "keyvault/azkeys",
"CoverageGoal": 0.71
},
{
"Name": "keyvault/azsecrets",
"CoverageGoal": 0.86
"CoverageGoal": 0.65
},
{
"Name": "data",
Expand Down
2 changes: 1 addition & 1 deletion sdk/security/keyvault/azadmin/assets.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
"AssetsRepo": "Azure/azure-sdk-assets",
"AssetsRepoPrefixPath": "go",
"TagPrefix": "go/security/keyvault/azadmin",
"Tag": "go/security/keyvault/azadmin_71b7c99818"
"Tag": "go/security/keyvault/azadmin_d59cdcad81"
}
2 changes: 1 addition & 1 deletion sdk/security/keyvault/azadmin/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ go 1.18
require (
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.11.1
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.2
github.com/Azure/azure-sdk-for-go/sdk/internal v1.7.0
github.com/Azure/azure-sdk-for-go/sdk/internal v1.8.0
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azkeys v1.1.0
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/internal v1.0.1
github.com/google/uuid v1.6.0
Expand Down
4 changes: 2 additions & 2 deletions sdk/security/keyvault/azadmin/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ github.com/Azure/azure-sdk-for-go/sdk/azcore v1.11.1 h1:E+OJmp2tPvt1W+amx48v1eqb
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.11.1/go.mod h1:a6xsAQUZg+VsS3TJ05SRp524Hs4pZ/AeFSr5ENf0Yjo=
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.2 h1:FDif4R1+UUR+00q6wquyX90K7A8dN+R5E8GEadoP7sU=
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.2/go.mod h1:aiYBYui4BJ/BJCAIKs92XiPyQfTaBWqvHujDwKb6CBU=
github.com/Azure/azure-sdk-for-go/sdk/internal v1.7.0 h1:rTfKOCZGy5ViVrlA74ZPE99a+SgoEE2K/yg3RyW9dFA=
github.com/Azure/azure-sdk-for-go/sdk/internal v1.7.0/go.mod h1:4OG6tQ9EOP/MT0NMjDlRzWoVFxfu9rN9B2X+tlSVktg=
github.com/Azure/azure-sdk-for-go/sdk/internal v1.8.0 h1:jBQA3cKT4L2rWMpgE7Yt3Hwh2aUj8KXjIGLxjHeYNNo=
github.com/Azure/azure-sdk-for-go/sdk/internal v1.8.0/go.mod h1:4OG6tQ9EOP/MT0NMjDlRzWoVFxfu9rN9B2X+tlSVktg=
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azkeys v1.1.0 h1:DRiANoJTiW6obBQe3SqZizkuV1PEgfiiGivmVocDy64=
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azkeys v1.1.0/go.mod h1:qLIye2hwb/ZouqhpSD9Zn3SJipvpEnz1Ywl3VUk9Y0s=
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/internal v1.0.1 h1:9fXQS/0TtQmKXp8SureKouF+idbQvp7cPUxykiohnBs=
Expand Down
132 changes: 75 additions & 57 deletions sdk/security/keyvault/azadmin/rbac/client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,6 @@ import (
)

func TestRoleDefinition(t *testing.T) {
if recording.GetRecordMode() == recording.PlaybackMode {
t.Skip("https://github.com/Azure/azure-sdk-for-go/issues/22869")
}
client := startAccessControlTest(t)

var name, roleName string
Expand All @@ -48,7 +45,13 @@ func TestRoleDefinition(t *testing.T) {
// test create definition
createdDefinition, err := client.CreateOrUpdateRoleDefinition(context.Background(), scope, name, parameters, nil)
require.NoError(t, err)
require.Equal(t, name, *createdDefinition.Name)

if recording.GetRecordMode() == recording.PlaybackMode {
require.Equal(t, "Sanitized", *createdDefinition.Name)
} else {
require.Equal(t, name, *createdDefinition.Name)
}

require.Len(t, createdDefinition.Properties.AssignableScopes, 1)
require.Equal(t, scope, *createdDefinition.Properties.AssignableScopes[0])
require.Equal(t, "test", *createdDefinition.Properties.Description)
Expand All @@ -73,49 +76,53 @@ func TestRoleDefinition(t *testing.T) {
require.Equal(t, *updatedDefinition.ID, *gotDefinition.ID)

// test list role definitions and check if created definition is in list exactly once
updatedDefinitionCount := 0
pager := client.NewListRoleDefinitionsPager(scope, nil)
require.True(t, pager.More())
for pager.More() {
res, err := pager.NextPage(context.Background())
require.NoError(t, err)
require.NotNil(t, res)

require.NotNil(t, res.Value)
for _, roleDefinition := range res.Value {
require.NotNil(t, roleDefinition.Properties)
require.NotNil(t, roleDefinition.ID)
require.NotNil(t, roleDefinition.Name)
require.NotNil(t, roleDefinition.Type)

if *roleDefinition.ID == *updatedDefinition.ID {
updatedDefinitionCount++
if recording.GetRecordMode() != recording.PlaybackMode {
updatedDefinitionCount := 0
pager := client.NewListRoleDefinitionsPager(scope, nil)
require.True(t, pager.More())
for pager.More() {
res, err := pager.NextPage(context.Background())
require.NoError(t, err)
require.NotNil(t, res)

require.NotNil(t, res.Value)
for _, roleDefinition := range res.Value {
require.NotNil(t, roleDefinition.Properties)
require.NotNil(t, roleDefinition.ID)
require.NotNil(t, roleDefinition.Name)
require.NotNil(t, roleDefinition.Type)

if *roleDefinition.ID == *updatedDefinition.ID {
updatedDefinitionCount++
}
}
}

testSerde(t, &res)
testSerde(t, &res)
}
require.Equal(t, 1, updatedDefinitionCount)
}
require.Equal(t, 1, updatedDefinitionCount)

// test delete
deletedDefinition, err := client.DeleteRoleDefinition(context.Background(), scope, name, nil)
require.NoError(t, err)
require.Equal(t, updatedDefinition.ID, deletedDefinition.ID)

// verify role definition is deleted
pager = client.NewListRoleDefinitionsPager(scope, nil)
for pager.More() {
res, err := pager.NextPage(context.Background())
require.NoError(t, err)

for _, roleDefinition := range res.Value {
require.NotNil(t, roleDefinition.Properties)
require.NotNil(t, roleDefinition.ID)
require.NotNil(t, roleDefinition.Name)
require.NotNil(t, roleDefinition.Type)

if *roleDefinition.ID == *updatedDefinition.ID {
t.Fatal("expected role definition to be deleted")
if recording.GetRecordMode() != recording.PlaybackMode {
pager := client.NewListRoleDefinitionsPager(scope, nil)
for pager.More() {
res, err := pager.NextPage(context.Background())
require.NoError(t, err)

for _, roleDefinition := range res.Value {
require.NotNil(t, roleDefinition.Properties)
require.NotNil(t, roleDefinition.ID)
require.NotNil(t, roleDefinition.Name)
require.NotNil(t, roleDefinition.Type)

if *roleDefinition.ID == *updatedDefinition.ID {
t.Fatal("expected role definition to be deleted")
}
}
}
}
Expand All @@ -139,9 +146,6 @@ func TestDeleteRoleDefinition_FailureInvalidRole(t *testing.T) {
}

func TestRoleAssignment(t *testing.T) {
if recording.GetRecordMode() == recording.PlaybackMode {
t.Skip("https://github.com/Azure/azure-sdk-for-go/issues/22869")
}
client := startAccessControlTest(t)

var name, principalID, roleDefinitionID string
Expand All @@ -165,9 +169,21 @@ func TestRoleAssignment(t *testing.T) {
// create role assignment
createdAssignment, err := client.CreateRoleAssignment(context.Background(), scope, name, roleAssignment, nil)
require.NoError(t, err)
require.Equal(t, name, *createdAssignment.Name)

if recording.GetRecordMode() == recording.PlaybackMode {
require.Equal(t, "Sanitized", *createdAssignment.Name)
require.Equal(t, "00000000-0000-0000-0000-000000000000", *createdAssignment.Properties.PrincipalID)
} else {
require.Equal(t, name, *createdAssignment.Name)
require.Equal(t, name, *createdAssignment.Name)
require.Equal(t, scope, *createdAssignment.Properties.Scope)
require.Equal(t, name, *createdAssignment.Name)
require.Equal(t, scope, *createdAssignment.Properties.Scope)
require.Equal(t, principalID, *createdAssignment.Properties.PrincipalID)
}

require.Equal(t, scope, *createdAssignment.Properties.Scope)
require.Equal(t, principalID, *createdAssignment.Properties.PrincipalID)

require.Equal(t, roleDefinitionID, *createdAssignment.Properties.RoleDefinitionID)

// test if able to get role assignment
Expand Down Expand Up @@ -206,25 +222,27 @@ func TestRoleAssignment(t *testing.T) {
require.NoError(t, err)
require.Equal(t, *createdAssignment.ID, *deletedAssignment.ID)

assignmentsPager = client.NewListRoleAssignmentsPager(scope, nil)
require.True(t, assignmentsPager.More())
if recording.GetRecordMode() != recording.PlaybackMode {
assignmentsPager = client.NewListRoleAssignmentsPager(scope, nil)
require.True(t, assignmentsPager.More())

for assignmentsPager.More() {
res, err := assignmentsPager.NextPage(context.Background())
require.NoError(t, err)
require.NotNil(t, res)
for assignmentsPager.More() {
res, err := assignmentsPager.NextPage(context.Background())
require.NoError(t, err)
require.NotNil(t, res)

require.NotNil(t, res.Value)
for _, roleAssignment := range res.Value {
require.NotNil(t, roleAssignment.Properties)
require.NotNil(t, roleAssignment.ID)
require.NotNil(t, roleAssignment.Name)
require.NotNil(t, roleAssignment.Type)
require.NotNil(t, res.Value)
for _, roleAssignment := range res.Value {
require.NotNil(t, roleAssignment.Properties)
require.NotNil(t, roleAssignment.ID)
require.NotNil(t, roleAssignment.Name)
require.NotNil(t, roleAssignment.Type)

require.NotEqual(t, *roleAssignment.ID, *createdAssignment.ID)
}
require.NotEqual(t, *roleAssignment.ID, *createdAssignment.ID)
}

testSerde(t, &res)
testSerde(t, &res)
}
}
}

Expand Down
22 changes: 14 additions & 8 deletions sdk/security/keyvault/azadmin/settings/client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,20 @@ import (
)

func TestGetSetting(t *testing.T) {
if recording.GetRecordMode() == recording.PlaybackMode {
t.Skip("https://github.com/Azure/azure-sdk-for-go/issues/22869")
}
client := startSettingsTest(t)

settingName := "AllowKeyManagementOperationsThroughARM"

res, err := client.GetSetting(context.Background(), settingName, nil)
require.NoError(t, err)

if recording.GetRecordMode() == recording.PlaybackMode {
settingName = "Sanitized"
}

require.NotNil(t, res)
require.Equal(t, *res.Name, settingName)
require.Equal(t, *res.Type, settings.SettingTypeBoolean)
require.Equal(t, settingName, *res.Name)
require.Equal(t, settings.SettingTypeBoolean, *res.Type)
require.NotNil(t, res.Value)
testSerde(t, &res)
}
Expand Down Expand Up @@ -71,10 +74,8 @@ func TestGetSettings(t *testing.T) {
}

func TestUpdateSetting(t *testing.T) {
if recording.GetRecordMode() == recording.PlaybackMode {
t.Skip("https://github.com/Azure/azure-sdk-for-go/issues/22869")
}
client := startSettingsTest(t)

settingName := "AllowKeyManagementOperationsThroughARM"
var updatedBool string

Expand All @@ -93,6 +94,11 @@ func TestUpdateSetting(t *testing.T) {

update, err := client.UpdateSetting(context.Background(), settingName, updateSettingRequest, nil)
require.NoError(t, err)

if recording.GetRecordMode() == recording.PlaybackMode {
settingName = "Sanitized"
}

require.NotNil(t, res)
require.Equal(t, settingName, *res.Name)
require.Equal(t, settings.SettingTypeBoolean, *res.Type)
Expand Down
2 changes: 1 addition & 1 deletion sdk/security/keyvault/azcertificates/assets.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
"AssetsRepo": "Azure/azure-sdk-assets",
"AssetsRepoPrefixPath": "go",
"TagPrefix": "go/security/keyvault/azcertificates",
"Tag": "go/security/keyvault/azcertificates_d675d8f502"
"Tag": "go/security/keyvault/azcertificates_79dd711e32"
}
Loading