diff --git a/builtin/providers/aws/resource_aws_iam_group_membership.go b/builtin/providers/aws/resource_aws_iam_group_membership.go index 6fd788a8e9..c90511cd62 100644 --- a/builtin/providers/aws/resource_aws_iam_group_membership.go +++ b/builtin/providers/aws/resource_aws_iam_group_membership.go @@ -124,7 +124,6 @@ func resourceAwsIamGroupMembershipDelete(d *schema.ResourceData, meta interface{ return err } - d.SetId("") return nil } diff --git a/builtin/providers/aws/resource_aws_iam_group_membership_test.go b/builtin/providers/aws/resource_aws_iam_group_membership_test.go index a15536fa48..211ceebd40 100644 --- a/builtin/providers/aws/resource_aws_iam_group_membership_test.go +++ b/builtin/providers/aws/resource_aws_iam_group_membership_test.go @@ -47,7 +47,7 @@ func testAccCheckAWSGroupMembershipDestroy(s *terraform.State) error { group := rs.Primary.Attributes["group"] - _, err := conn.GetGroup(&iam.GetGroupInput{ + resp, err := conn.GetGroup(&iam.GetGroupInput{ GroupName: aws.String(group), }) if err != nil { @@ -55,7 +55,14 @@ func testAccCheckAWSGroupMembershipDestroy(s *terraform.State) error { return err } - return fmt.Errorf("Error: Group (%s) still exists", group) + users := []string{"test-user", "test-user-two", "test-user-three"} + for _, u := range resp.Users { + for _, i := range users { + if i == *u.UserName { + return fmt.Errorf("Error: User (s) still a member of Group (%s)", i, *resp.Group.GroupName) + } + } + } }