4949 }
5050
5151 adbName = utils .RandomString (1 , utils .CharsetWithoutDigits ) + utils .RandomString (13 , utils .Charset )
52+ longAdbName1 = utils .RandomString (1 , utils .CharsetWithoutDigits ) + utils .RandomString (14 , utils .Charset )
53+ longAdbName2 = utils .RandomString (1 , utils .CharsetWithoutDigits ) + utils .RandomString (28 , utils .Charset )
5254 adbCloneName = utils .RandomString (1 , utils .CharsetWithoutDigits ) + utils .RandomString (13 , utils .Charset )
5355
5456 autonomousDatabaseRepresentation = map [string ]interface {}{
@@ -165,14 +167,15 @@ func TestDatabaseAutonomousDatabaseResource_basic(t *testing.T) {
165167 {
166168 Config : config + compartmentIdVariableStr + AutonomousDatabaseResourceDependencies ,
167169 },
168- // verify Create with optionals
170+ // verify Create with optionals and long dbName
169171 {
170172 Config : config + compartmentIdVariableStr + AutonomousDatabaseResourceDependencies +
171173 acctest .GenerateResourceFromRepresentationMap ("oci_database_autonomous_database" , "test_autonomous_database" , acctest .Optional , acctest .Create ,
172174 acctest .RepresentationCopyWithNewProperties (acctest .GetUpdatedRepresentationCopy ("license_model" , acctest.Representation {RepType : acctest .Optional , Create : `BRING_YOUR_OWN_LICENSE` }, autonomousDatabaseRepresentationMaxCpu ), map [string ]interface {}{
173175 "open_mode" : acctest.Representation {RepType : acctest .Optional , Create : `READ_ONLY` , Update : `READ_ONLY` },
174176 "permission_level" : acctest.Representation {RepType : acctest .Optional , Create : `RESTRICTED` , Update : `RESTRICTED` },
175177 "database_edition" : acctest.Representation {RepType : acctest .Optional , Create : `STANDARD_EDITION` , Update : `STANDARD_EDITION` },
178+ "db_name" : acctest.Representation {RepType : acctest .Required , Create : longAdbName1 },
176179 }),
177180 ),
178181 Check : acctest .ComposeAggregateTestCheckFuncWrapper (
@@ -185,7 +188,7 @@ func TestDatabaseAutonomousDatabaseResource_basic(t *testing.T) {
185188 resource .TestCheckResourceAttr (resourceName , "data_safe_status" , "NOT_REGISTERED" ),
186189 resource .TestCheckResourceAttr (resourceName , "data_storage_size_in_tbs" , "1" ),
187190 resource .TestCheckResourceAttr (resourceName , "database_edition" , "STANDARD_EDITION" ),
188- resource .TestCheckResourceAttr (resourceName , "db_name" , adbName ),
191+ resource .TestCheckResourceAttr (resourceName , "db_name" , longAdbName1 ),
189192 resource .TestCheckResourceAttrSet (resourceName , "db_version" ),
190193 resource .TestCheckResourceAttr (resourceName , "db_workload" , "OLTP" ),
191194 resource .TestCheckResourceAttr (resourceName , "display_name" , "example_autonomous_database" ),
@@ -230,6 +233,7 @@ func TestDatabaseAutonomousDatabaseResource_basic(t *testing.T) {
230233 "database_management_status" : acctest.Representation {RepType : acctest .Optional , Create : `ENABLED` , Update : `ENABLED` },
231234 "operations_insights_status" : acctest.Representation {RepType : acctest .Optional , Create : `NOT_ENABLED` , Update : `NOT_ENABLED` },
232235 "database_edition" : acctest.Representation {RepType : acctest .Optional , Create : `STANDARD_EDITION` , Update : `STANDARD_EDITION` },
236+ "db_name" : acctest.Representation {RepType : acctest .Required , Create : longAdbName1 },
233237 }),
234238 ),
235239 Check : acctest .ComposeAggregateTestCheckFuncWrapper (
@@ -242,7 +246,7 @@ func TestDatabaseAutonomousDatabaseResource_basic(t *testing.T) {
242246 resource .TestCheckResourceAttr (resourceName , "data_safe_status" , "NOT_REGISTERED" ),
243247 resource .TestCheckResourceAttr (resourceName , "data_storage_size_in_tbs" , "1" ),
244248 resource .TestCheckResourceAttr (resourceName , "database_edition" , "STANDARD_EDITION" ),
245- resource .TestCheckResourceAttr (resourceName , "db_name" , adbName ),
249+ resource .TestCheckResourceAttr (resourceName , "db_name" , longAdbName1 ),
246250 resource .TestCheckResourceAttrSet (resourceName , "db_version" ),
247251 resource .TestCheckResourceAttr (resourceName , "db_workload" , "OLTP" ),
248252 resource .TestCheckResourceAttr (resourceName , "display_name" , "example_autonomous_database" ),
@@ -280,6 +284,7 @@ func TestDatabaseAutonomousDatabaseResource_basic(t *testing.T) {
280284 "open_mode" : acctest.Representation {RepType : acctest .Optional , Create : `READ_WRITE` , Update : `READ_WRITE` },
281285 "permission_level" : acctest.Representation {RepType : acctest .Optional , Create : `UNRESTRICTED` , Update : `UNRESTRICTED` },
282286 "database_edition" : acctest.Representation {RepType : acctest .Optional , Create : `ENTERPRISE_EDITION` , Update : `ENTERPRISE_EDITION` },
287+ "db_name" : acctest.Representation {RepType : acctest .Required , Create : longAdbName1 },
283288 })),
284289 Check : acctest .ComposeAggregateTestCheckFuncWrapper (
285290 resource .TestCheckResourceAttr (resourceName , "admin_password" , "BEstrO0ng_#11" ),
@@ -291,7 +296,7 @@ func TestDatabaseAutonomousDatabaseResource_basic(t *testing.T) {
291296 resource .TestCheckResourceAttr (resourceName , "data_safe_status" , "NOT_REGISTERED" ),
292297 resource .TestCheckResourceAttr (resourceName , "data_storage_size_in_tbs" , "1" ),
293298 resource .TestCheckResourceAttr (resourceName , "database_edition" , "ENTERPRISE_EDITION" ),
294- resource .TestCheckResourceAttr (resourceName , "db_name" , adbName ),
299+ resource .TestCheckResourceAttr (resourceName , "db_name" , longAdbName1 ),
295300 resource .TestCheckResourceAttrSet (resourceName , "db_version" ),
296301 resource .TestCheckResourceAttr (resourceName , "db_workload" , "OLTP" ),
297302 resource .TestCheckResourceAttr (resourceName , "display_name" , "example_autonomous_database" ),
@@ -325,6 +330,54 @@ func TestDatabaseAutonomousDatabaseResource_basic(t *testing.T) {
325330 ),
326331 },
327332
333+ // verify rename-database to longer dbName
334+ {
335+ Config : config + compartmentIdVariableStr + compartmentIdUVariableStr + AutonomousDatabaseResourceDependencies +
336+ acctest .GenerateResourceFromRepresentationMap ("oci_database_autonomous_database" , "test_autonomous_database" , acctest .Optional , acctest .Create ,
337+ acctest .RepresentationCopyWithNewProperties (autonomousDatabaseRepresentationBYOL , map [string ]interface {}{
338+ "compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id_for_update}` },
339+ "open_mode" : acctest.Representation {RepType : acctest .Optional , Create : `READ_WRITE` , Update : `READ_WRITE` },
340+ "permission_level" : acctest.Representation {RepType : acctest .Optional , Create : `UNRESTRICTED` , Update : `UNRESTRICTED` },
341+ "database_edition" : acctest.Representation {RepType : acctest .Optional , Create : `ENTERPRISE_EDITION` , Update : `ENTERPRISE_EDITION` },
342+ "db_name" : acctest.Representation {RepType : acctest .Required , Create : longAdbName2 },
343+ })),
344+ Check : acctest .ComposeAggregateTestCheckFuncWrapper (
345+ resource .TestCheckResourceAttr (resourceName , "db_name" , longAdbName2 ),
346+
347+ func (s * terraform.State ) (err error ) {
348+ resId2 , err = acctest .FromInstanceState (s , resourceName , "id" )
349+ if resId != resId2 {
350+ return fmt .Errorf ("resource recreated when it was supposed to be updated" )
351+ }
352+ return err
353+ },
354+ ),
355+ },
356+
357+ // verify rename-database to smaller dbName
358+ {
359+ Config : config + compartmentIdVariableStr + compartmentIdUVariableStr + AutonomousDatabaseResourceDependencies +
360+ acctest .GenerateResourceFromRepresentationMap ("oci_database_autonomous_database" , "test_autonomous_database" , acctest .Optional , acctest .Create ,
361+ acctest .RepresentationCopyWithNewProperties (autonomousDatabaseRepresentationBYOL , map [string ]interface {}{
362+ "compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id_for_update}` },
363+ "open_mode" : acctest.Representation {RepType : acctest .Optional , Create : `READ_WRITE` , Update : `READ_WRITE` },
364+ "permission_level" : acctest.Representation {RepType : acctest .Optional , Create : `UNRESTRICTED` , Update : `UNRESTRICTED` },
365+ "database_edition" : acctest.Representation {RepType : acctest .Optional , Create : `ENTERPRISE_EDITION` , Update : `ENTERPRISE_EDITION` },
366+ "db_name" : acctest.Representation {RepType : acctest .Required , Create : adbName },
367+ })),
368+ Check : acctest .ComposeAggregateTestCheckFuncWrapper (
369+ resource .TestCheckResourceAttr (resourceName , "db_name" , adbName ),
370+
371+ func (s * terraform.State ) (err error ) {
372+ resId2 , err = acctest .FromInstanceState (s , resourceName , "id" )
373+ if resId != resId2 {
374+ return fmt .Errorf ("resource recreated when it was supposed to be updated" )
375+ }
376+ return err
377+ },
378+ ),
379+ },
380+
328381 // verify updates to updatable parameters
329382 {
330383 Config : config + compartmentIdVariableStr + AutonomousDatabaseResourceDependencies +
0 commit comments