github.com/Azure/aad-pod-identity@v1.8.17/pkg/cloudprovider/identity_test.go (about)

     1  package cloudprovider
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/Azure/azure-sdk-for-go/services/compute/mgmt/2019-12-01/compute"
     7  )
     8  
     9  func TestGetUpdatedResourceIdentityType(t *testing.T) {
    10  	cases := []struct {
    11  		current  compute.ResourceIdentityType
    12  		expected compute.ResourceIdentityType
    13  	}{
    14  		{
    15  			current:  "",
    16  			expected: compute.ResourceIdentityTypeUserAssigned,
    17  		},
    18  		{
    19  			current:  compute.ResourceIdentityTypeNone,
    20  			expected: compute.ResourceIdentityTypeUserAssigned,
    21  		},
    22  		{
    23  			current:  compute.ResourceIdentityTypeUserAssigned,
    24  			expected: compute.ResourceIdentityTypeUserAssigned,
    25  		},
    26  		{
    27  			current:  compute.ResourceIdentityTypeSystemAssigned,
    28  			expected: compute.ResourceIdentityTypeSystemAssignedUserAssigned,
    29  		},
    30  		{
    31  			current:  compute.ResourceIdentityTypeSystemAssignedUserAssigned,
    32  			expected: compute.ResourceIdentityTypeSystemAssignedUserAssigned,
    33  		},
    34  	}
    35  
    36  	for _, tc := range cases {
    37  		actual := getUpdatedResourceIdentityType(tc.current)
    38  		if tc.expected != actual {
    39  			t.Fatalf("expected: %v, got: %v", tc.expected, actual)
    40  		}
    41  	}
    42  }