Skip to content

Commit 85ec7f8

Browse files
committed
test: rearranging tests
1 parent c1b2dd7 commit 85ec7f8

File tree

2 files changed

+148
-156
lines changed

2 files changed

+148
-156
lines changed

provider/rediscloud_essentials_subscription_password_update_test.go

Lines changed: 0 additions & 156 deletions
This file was deleted.

provider/rediscloud_essentials_subscription_test.go

Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -430,3 +430,151 @@ func testAccCheckEssentialsSubscriptionDestroy(s *terraform.State) error {
430430

431431
return nil
432432
}
433+
434+
// there was a bug where removing the default user meant
435+
func TestAccResourceRedisCloudEssentialsDatabase_DisableDefaultUser(t *testing.T) {
436+
testAccRequiresEnvVar(t, "EXECUTE_TESTS")
437+
438+
subscriptionName := acctest.RandomWithPrefix(testResourcePrefix)
439+
databaseName := subscriptionName + "-db"
440+
databaseNameUpdated := databaseName + "-updated"
441+
442+
const resourceName = "rediscloud_essentials_database.example"
443+
const datasourceName = "data.rediscloud_essentials_database.example"
444+
445+
resource.ParallelTest(t, resource.TestCase{
446+
PreCheck: func() { testAccPreCheck(t) },
447+
ProviderFactories: providerFactories,
448+
CheckDestroy: testAccCheckEssentialsSubscriptionDestroy,
449+
Steps: []resource.TestStep{
450+
{
451+
Config: fmt.Sprintf(testAccResourceRedisCloudEssentialsDatabaseDisableDefaultUserCreate, subscriptionName, databaseName),
452+
Check: resource.ComposeAggregateTestCheckFunc(
453+
// Test creating resource
454+
resource.TestMatchResourceAttr(resourceName, "id", regexp.MustCompile("^\\d+/\\d+$")),
455+
resource.TestCheckResourceAttrSet(resourceName, "subscription_id"),
456+
resource.TestCheckResourceAttrSet(resourceName, "db_id"),
457+
resource.TestCheckResourceAttr(resourceName, "name", databaseName),
458+
resource.TestCheckResourceAttr(resourceName, "enable_default_user", "true"),
459+
resource.TestCheckResourceAttr(resourceName, "password", "j43589rhe39f"),
460+
461+
// Test the datasource
462+
resource.TestMatchResourceAttr(datasourceName, "id", regexp.MustCompile("^\\d+/\\d+$")),
463+
resource.TestCheckResourceAttrSet(datasourceName, "subscription_id"),
464+
resource.TestCheckResourceAttrSet(datasourceName, "db_id"),
465+
resource.TestCheckResourceAttr(datasourceName, "name", databaseName),
466+
resource.TestCheckResourceAttr(datasourceName, "enable_default_user", "true"),
467+
resource.TestCheckResourceAttr(datasourceName, "password", "j43589rhe39f"),
468+
),
469+
},
470+
{
471+
// test update
472+
Config: fmt.Sprintf(testAccResourceRedisCloudEssentialsDatabaseDisableDefaultUserUpdate, subscriptionName, databaseNameUpdated),
473+
Check: resource.ComposeAggregateTestCheckFunc(
474+
// Test the resource
475+
resource.TestMatchResourceAttr(resourceName, "id", regexp.MustCompile("^\\d+/\\d+$")),
476+
resource.TestCheckResourceAttrSet(resourceName, "subscription_id"),
477+
resource.TestCheckResourceAttrSet(resourceName, "db_id"),
478+
resource.TestCheckResourceAttr(resourceName, "name", databaseNameUpdated),
479+
resource.TestCheckResourceAttr(resourceName, "enable_default_user", "false"),
480+
resource.TestCheckResourceAttr(resourceName, "password", ""),
481+
482+
// Test the datasource
483+
resource.TestMatchResourceAttr(datasourceName, "id", regexp.MustCompile("^\\d+/\\d+$")),
484+
resource.TestCheckResourceAttrSet(datasourceName, "subscription_id"),
485+
resource.TestCheckResourceAttrSet(datasourceName, "db_id"),
486+
resource.TestCheckResourceAttr(datasourceName, "name", databaseNameUpdated),
487+
resource.TestCheckResourceAttr(datasourceName, "enable_default_user", "false"),
488+
),
489+
},
490+
{
491+
Config: fmt.Sprintf(testAccResourceRedisCloudEssentialsDatabaseDisableDefaultUserUpdate, subscriptionName, databaseName),
492+
ResourceName: resourceName,
493+
ImportState: true,
494+
ImportStateVerify: true,
495+
ImportStateVerifyIgnore: []string{"password", "enable_payg_features"},
496+
},
497+
},
498+
})
499+
}
500+
501+
const testAccResourceRedisCloudEssentialsDatabaseDisableDefaultUserCreate = `
502+
503+
data "rediscloud_payment_method" "card" {
504+
card_type = "Visa"
505+
}
506+
507+
data "rediscloud_essentials_plan" "example" {
508+
name = "Single-Zone_1GB"
509+
cloud_provider = "AWS"
510+
region = "eu-west-1"
511+
}
512+
513+
data "rediscloud_essentials_database" "example" {
514+
subscription_id = rediscloud_essentials_subscription.example.id
515+
name = rediscloud_essentials_database.example.name
516+
}
517+
518+
resource "rediscloud_essentials_subscription" "example" {
519+
name = "%s"
520+
plan_id = data.rediscloud_essentials_plan.example.id
521+
payment_method_id = data.rediscloud_payment_method.card.id
522+
}
523+
524+
resource "rediscloud_essentials_database" "example" {
525+
subscription_id = rediscloud_essentials_subscription.example.id
526+
name = "%s"
527+
enable_default_user = true
528+
password = "j43589rhe39f"
529+
530+
data_persistence = "none"
531+
replication = false
532+
533+
alert {
534+
name = "throughput-higher-than"
535+
value = 80
536+
}
537+
tags = {
538+
"envaaaa" = "qaaaa"
539+
}
540+
}
541+
`
542+
543+
const testAccResourceRedisCloudEssentialsDatabaseDisableDefaultUserUpdate = `
544+
data "rediscloud_payment_method" "card" {
545+
card_type = "Visa"
546+
}
547+
548+
data "rediscloud_essentials_plan" "example" {
549+
name = "Single-Zone_1GB"
550+
cloud_provider = "AWS"
551+
region = "eu-west-1"
552+
}
553+
554+
data "rediscloud_essentials_database" "example" {
555+
subscription_id = rediscloud_essentials_subscription.example.id
556+
name = rediscloud_essentials_database.example.name
557+
}
558+
559+
resource "rediscloud_essentials_subscription" "example" {
560+
name = "%s"
561+
plan_id = data.rediscloud_essentials_plan.example.id
562+
payment_method_id = data.rediscloud_payment_method.card.id
563+
}
564+
565+
resource "rediscloud_essentials_database" "example" {
566+
subscription_id = rediscloud_essentials_subscription.example.id
567+
name = "%s"
568+
enable_default_user = false
569+
data_persistence = "none"
570+
replication = false
571+
572+
alert {
573+
name = "throughput-higher-than"
574+
value = 80
575+
}
576+
tags = {
577+
"envaaaa" = "qaaaa"
578+
}
579+
}
580+
`

0 commit comments

Comments
 (0)