Skip to content

Commit 04253f5

Browse files
spanner: updated tests to allow VCR (#12280) (#20236)
[upstream:b90cb18cb5c92f81447329607b7b5eec5a6ee8e3] Signed-off-by: Modular Magician <[email protected]>
1 parent c749dbb commit 04253f5

File tree

4 files changed

+41
-33
lines changed

4 files changed

+41
-33
lines changed

.changelog/12280.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:none
2+
3+
```

google/services/spanner/data_source_spanner_instance_test.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ import (
1010
)
1111

1212
func TestAccDataSourceSpannerInstance_basic(t *testing.T) {
13-
// Randomness from spanner instance
14-
acctest.SkipIfVcr(t)
1513
t.Parallel()
1614

1715
context := map[string]interface{}{
@@ -36,16 +34,18 @@ func TestAccDataSourceSpannerInstance_basic(t *testing.T) {
3634
func testAccDataSourceSpannerInstanceBasic(context map[string]interface{}) string {
3735
return acctest.Nprintf(`
3836
resource "google_spanner_instance" "bar" {
39-
config = "regional-us-central1"
40-
display_name = "Test Spanner Instance"
41-
num_nodes = 2
42-
labels = {
43-
"foo" = "bar"
44-
}
37+
name = "tf-test-%{random_suffix}"
38+
display_name = "Test Spanner Instance"
39+
config = "regional-us-central1"
40+
41+
processing_units = 100
42+
labels = {
43+
"foo" = "bar"
44+
}
4545
}
4646
4747
data "google_spanner_instance" "foo" {
48-
name = google_spanner_instance.bar.name
48+
name = google_spanner_instance.bar.name
4949
}
5050
`, context)
5151
}

google/services/spanner/resource_spanner_database_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ func TestAccSpannerDatabase_versionRetentionPeriod(t *testing.T) {
291291
// Test that when the above config is reapplied:
292292
// - changes the value (reverts to set value of `version_retention_period`, 2h)
293293
// - is stable; no further conflict
294-
Config: testAccSpannerDatabase_versionRetentionPeriodUpdate3(instanceName, databaseName), //same as previous step
294+
Config: testAccSpannerDatabase_versionRetentionPeriodUpdate3(instanceName, databaseName), // same as previous step
295295
ExpectNonEmptyPlan: false, // is stable
296296
Check: resource.ComposeTestCheckFunc(
297297
resource.TestCheckResourceAttrSet("google_spanner_database.basic", "state"),
@@ -467,7 +467,6 @@ resource "google_spanner_database" "basic" {
467467
}
468468

469469
func TestAccSpannerDatabase_deletionProtection(t *testing.T) {
470-
acctest.SkipIfVcr(t)
471470
t.Parallel()
472471

473472
context := map[string]interface{}{
@@ -503,8 +502,9 @@ func TestAccSpannerDatabase_deletionProtection(t *testing.T) {
503502
func testAccSpannerDatabase_deletionProtection(context map[string]interface{}) string {
504503
return acctest.Nprintf(`
505504
resource "google_spanner_instance" "main" {
506-
config = "regional-europe-west1"
505+
name = "tf-test-%{random_suffix}"
507506
display_name = "main-instance"
507+
config = "regional-europe-west1"
508508
num_nodes = 1
509509
}
510510

google/services/spanner/resource_spanner_instance_test.go

Lines changed: 26 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717
func TestAccSpannerInstance_basic(t *testing.T) {
1818
t.Parallel()
1919

20-
idName := fmt.Sprintf("spanner-test-%s", acctest.RandString(t, 10))
20+
idName := fmt.Sprintf("tf-test-%s", acctest.RandString(t, 10))
2121
acctest.VcrTest(t, resource.TestCase{
2222
PreCheck: func() { acctest.AccTestPreCheck(t) },
2323
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
@@ -41,7 +41,7 @@ func TestAccSpannerInstance_basic(t *testing.T) {
4141
func TestAccSpannerInstance_noNodeCountSpecified(t *testing.T) {
4242
t.Parallel()
4343

44-
idName := fmt.Sprintf("spanner-test-%s", acctest.RandString(t, 10))
44+
idName := fmt.Sprintf("tf-test-%s", acctest.RandString(t, 10))
4545
acctest.VcrTest(t, resource.TestCase{
4646
PreCheck: func() { acctest.AccTestPreCheck(t) },
4747
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
@@ -56,11 +56,12 @@ func TestAccSpannerInstance_noNodeCountSpecified(t *testing.T) {
5656
}
5757

5858
func TestAccSpannerInstance_basicWithAutogenName(t *testing.T) {
59-
// Randomness
59+
// Since we're testing the autogenerated name specifically here, we can't use VCR. This shouldn't be copy /
60+
// pasted to other configs, though.
6061
acctest.SkipIfVcr(t)
6162
t.Parallel()
6263

63-
displayName := fmt.Sprintf("spanner-test-%s-dname", acctest.RandString(t, 10))
64+
displayName := fmt.Sprintf("tf-test-%s-dname", acctest.RandString(t, 10))
6465
acctest.VcrTest(t, resource.TestCase{
6566
PreCheck: func() { acctest.AccTestPreCheck(t) },
6667
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
@@ -82,19 +83,21 @@ func TestAccSpannerInstance_basicWithAutogenName(t *testing.T) {
8283
}
8384

8485
func TestAccSpannerInstance_update(t *testing.T) {
85-
// Randomness
86-
acctest.SkipIfVcr(t)
8786
t.Parallel()
8887

89-
dName1 := fmt.Sprintf("spanner-dname1-%s", acctest.RandString(t, 10))
90-
dName2 := fmt.Sprintf("spanner-dname2-%s", acctest.RandString(t, 10))
88+
// Update display name, but keep real name consistent, as it cannot be
89+
// updated after creation.
90+
name := fmt.Sprintf("tf-test-%s", acctest.RandString(t, 10))
91+
dName1 := fmt.Sprintf("tf-test-dname1-%s", acctest.RandString(t, 10))
92+
dName2 := fmt.Sprintf("tf-test-dname2-%s", acctest.RandString(t, 10))
93+
9194
acctest.VcrTest(t, resource.TestCase{
9295
PreCheck: func() { acctest.AccTestPreCheck(t) },
9396
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
9497
CheckDestroy: testAccCheckSpannerInstanceDestroyProducer(t),
9598
Steps: []resource.TestStep{
9699
{
97-
Config: testAccSpannerInstance_update(dName1, 1, false),
100+
Config: testAccSpannerInstance_update(name, dName1, 1, false),
98101
},
99102
{
100103
ResourceName: "google_spanner_instance.updater",
@@ -103,7 +106,7 @@ func TestAccSpannerInstance_update(t *testing.T) {
103106
ImportStateVerifyIgnore: []string{"labels", "terraform_labels"},
104107
},
105108
{
106-
Config: testAccSpannerInstance_update(dName2, 2, true),
109+
Config: testAccSpannerInstance_update(name, dName2, 2, true),
107110
},
108111
{
109112
ResourceName: "google_spanner_instance.updater",
@@ -116,11 +119,9 @@ func TestAccSpannerInstance_update(t *testing.T) {
116119
}
117120

118121
func TestAccSpannerInstance_virtualUpdate(t *testing.T) {
119-
// Randomness
120-
acctest.SkipIfVcr(t)
121122
t.Parallel()
122123

123-
dName := fmt.Sprintf("spanner-dname1-%s", acctest.RandString(t, 10))
124+
dName := fmt.Sprintf("tf-test-dname1-%s", acctest.RandString(t, 10))
124125
acctest.VcrTest(t, resource.TestCase{
125126
PreCheck: func() { acctest.AccTestPreCheck(t) },
126127
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
@@ -147,7 +148,7 @@ func TestAccSpannerInstance_virtualUpdate(t *testing.T) {
147148
func TestAccSpannerInstance_basicWithAutoscalingUsingProcessingUnitConfig(t *testing.T) {
148149
t.Parallel()
149150

150-
displayName := fmt.Sprintf("spanner-test-%s-dname", acctest.RandString(t, 10))
151+
displayName := fmt.Sprintf("tf-test-%s-dname", acctest.RandString(t, 10))
151152
acctest.VcrTest(t, resource.TestCase{
152153
PreCheck: func() { acctest.AccTestPreCheck(t) },
153154
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
@@ -232,7 +233,7 @@ func TestAccSpannerInstance_basicWithAutoscalingUsingProcessingUnitConfigUpdate(
232233
func TestAccSpannerInstance_basicWithAutoscalingUsingNodeConfig(t *testing.T) {
233234
t.Parallel()
234235

235-
displayName := fmt.Sprintf("spanner-test-%s-dname", acctest.RandString(t, 10))
236+
displayName := fmt.Sprintf("tf-test-%s-dname", acctest.RandString(t, 10))
236237
acctest.VcrTest(t, resource.TestCase{
237238
PreCheck: func() { acctest.AccTestPreCheck(t) },
238239
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories(t),
@@ -367,8 +368,9 @@ resource "google_spanner_instance" "basic" {
367368
name = "%s"
368369
config = "regional-us-central1"
369370
display_name = "%s-dname"
370-
num_nodes = 1
371-
edition = "ENTERPRISE"
371+
372+
processing_units = 100
373+
edition = "ENTERPRISE"
372374
default_backup_schedule_type = "NONE"
373375
}
374376
`, name, name)
@@ -389,19 +391,21 @@ func testAccSpannerInstance_basicWithAutogenName(name string) string {
389391
resource "google_spanner_instance" "basic" {
390392
config = "regional-us-central1"
391393
display_name = "%s"
392-
num_nodes = 1
394+
395+
processing_units = 100
393396
}
394397
`, name)
395398
}
396399

397-
func testAccSpannerInstance_update(name string, nodes int, addLabel bool) string {
400+
func testAccSpannerInstance_update(name, dname string, nodes int, addLabel bool) string {
398401
extraLabel := ""
399402
if addLabel {
400403
extraLabel = "\"key2\" = \"value2\""
401404
}
402405
return fmt.Sprintf(`
403406
resource "google_spanner_instance" "updater" {
404407
config = "regional-us-central1"
408+
name = "%s"
405409
display_name = "%s"
406410
num_nodes = %d
407411
@@ -410,15 +414,16 @@ resource "google_spanner_instance" "updater" {
410414
%s
411415
}
412416
}
413-
`, name, nodes, extraLabel)
417+
`, name, dname, nodes, extraLabel)
414418
}
415419

416420
func testAccSpannerInstance_virtualUpdate(name, virtual string) string {
417421
return fmt.Sprintf(`
418422
resource "google_spanner_instance" "basic" {
419423
name = "%s"
420-
config = "regional-us-central1"
421424
display_name = "%s"
425+
config = "regional-us-central1"
426+
422427
processing_units = 100
423428
force_destroy = "%s"
424429
}

0 commit comments

Comments
 (0)