Skip to content

Commit 135e66f

Browse files
authored
Test or TestAccResourceMongoDBAtlasDatabaseUser_withAWSIAMType with (#432)
* Test or TestAccResourceMongoDBAtlasDatabaseUser_withAWSIAMType with import 1. Why is this change necessary? Test for a import is a nice to have 2. How does it address the issue? Test the function with the import for a matching scenario 3. What side effects does this change have? None known * username set in env var 1. Why is this change necessary? Modular testing 2. How does it address the issue? Make the username variable in that particular test dependentant on a env var 3. What side effects does this change have? None
1 parent 733570c commit 135e66f

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

mongodbatlas/resource_mongodbatlas_database_user_test.go

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,47 @@ func TestAccResourceMongoDBAtlasDatabaseUser_withAWSIAMType(t *testing.T) {
148148
})
149149
}
150150

151+
func TestAccResourceMongoDBAtlasDatabaseUser_withAWSIAMType_import(t *testing.T) {
152+
var (
153+
dbUser matlas.DatabaseUser
154+
resourceName = "mongodbatlas_database_user.test"
155+
username = os.Getenv("TEST_DB_USER_IAM_ARN")
156+
orgID = os.Getenv("MONGODB_ATLAS_ORG_ID")
157+
projectName = acctest.RandomWithPrefix("test-acc")
158+
)
159+
160+
if username == "" {
161+
username = "arn:aws:iam::358363220050:user/mongodb-aws-iam-auth-test-user"
162+
}
163+
164+
resource.ParallelTest(t, resource.TestCase{
165+
PreCheck: func() { testAccPreCheck(t) },
166+
Providers: testAccProviders,
167+
CheckDestroy: testAccCheckMongoDBAtlasDatabaseUserDestroy,
168+
Steps: []resource.TestStep{
169+
{
170+
Config: testAccMongoDBAtlasDatabaseUserWithAWSIAMTypeConfig(projectName, orgID, "atlasAdmin", username, "First Key", "First value"),
171+
Check: resource.ComposeTestCheckFunc(
172+
testAccCheckMongoDBAtlasDatabaseUserExists(resourceName, &dbUser),
173+
testAccCheckMongoDBAtlasDatabaseUserAttributes(&dbUser, username),
174+
resource.TestCheckResourceAttrSet(resourceName, "project_id"),
175+
resource.TestCheckResourceAttr(resourceName, "username", username),
176+
resource.TestCheckResourceAttr(resourceName, "aws_iam_type", "USER"),
177+
resource.TestCheckResourceAttr(resourceName, "auth_database_name", "$external"),
178+
resource.TestCheckResourceAttr(resourceName, "labels.#", "1"),
179+
),
180+
},
181+
{
182+
ResourceName: resourceName,
183+
ImportStateIdFunc: testAccCheckMongoDBAtlasDatabaseUserImportStateIDFunc(resourceName),
184+
ImportState: true,
185+
ImportStateVerify: true,
186+
ImportStateVerifyIgnore: []string{"password"},
187+
},
188+
},
189+
})
190+
}
191+
151192
func TestAccResourceMongoDBAtlasDatabaseUser_WithLabels(t *testing.T) {
152193
var (
153194
dbUser matlas.DatabaseUser

0 commit comments

Comments
 (0)