driftctl/pkg/resource/aws/aws_iam_role_test.go

61 lines
1.5 KiB
Go

package aws_test
import (
"testing"
"github.com/cloudskiff/driftctl/test"
"github.com/cloudskiff/driftctl/test/acceptance"
)
func TestAcc_Aws_IamRole(t *testing.T) {
acceptance.Run(t, acceptance.AccTestCase{
TerraformVersion: "0.15.5",
Paths: []string{"./testdata/acc/aws_iam_role"},
Args: []string{"scan", "--filter", "Type=='aws_iam_role'", "--tf-provider-version", "3.45.0", "--deep"},
Checks: []acceptance.AccCheck{
{
Env: map[string]string{
"AWS_REGION": "us-east-1",
},
Check: func(result *test.ScanResult, stdout string, err error) {
if err != nil {
t.Fatal(err)
}
result.AssertDriftCountTotal(0)
result.AssertDeletedCount(0)
result.AssertManagedCount(1)
},
},
},
})
}
func TestAcc_Aws_IamRole_WithManaged(t *testing.T) {
acceptance.Run(t, acceptance.AccTestCase{
TerraformVersion: "0.15.5",
Paths: []string{"./testdata/acc/aws_iam_role_with_managed_policies"},
Args: []string{
"scan",
"--filter",
"Type=='aws_iam_role' || Type=='aws_iam_policy_attachment'",
"--tf-provider-version",
"3.45.0",
},
Checks: []acceptance.AccCheck{
{
Env: map[string]string{
"AWS_REGION": "us-east-1",
},
Check: func(result *test.ScanResult, stdout string, err error) {
if err != nil {
t.Fatal(err)
}
result.AssertDriftCountTotal(0)
result.AssertDeletedCount(0)
result.AssertManagedCount(2)
},
},
},
})
}