github.com/versent/saml2aws@v2.17.0+incompatible/aws_role_test.go (about)

     1  package saml2aws
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/assert"
     7  )
     8  
     9  func TestParseRoles(t *testing.T) {
    10  
    11  	roles := []string{
    12  		"arn:aws:iam::456456456456:saml-provider/example-idp,arn:aws:iam::456456456456:role/admin",
    13  		"arn:aws:iam::456456456456:role/admin,arn:aws:iam::456456456456:saml-provider/example-idp",
    14  	}
    15  
    16  	awsRoles, err := ParseAWSRoles(roles)
    17  
    18  	assert.Nil(t, err)
    19  	assert.Len(t, awsRoles, 2)
    20  
    21  	for _, awsRole := range awsRoles {
    22  		assert.Equal(t, "arn:aws:iam::456456456456:saml-provider/example-idp", awsRole.PrincipalARN)
    23  		assert.Equal(t, "arn:aws:iam::456456456456:role/admin", awsRole.RoleARN)
    24  	}
    25  
    26  	roles = []string{""}
    27  	awsRoles, err = ParseAWSRoles(roles)
    28  
    29  	assert.NotNil(t, err)
    30  	assert.Nil(t, awsRoles)
    31  
    32  }