Skip to content

Commit bedec8b

Browse files
committed
Add guest accelerator skip test for instances.
1 parent 900a018 commit bedec8b

File tree

1 file changed

+37
-4
lines changed

1 file changed

+37
-4
lines changed

google/resource_compute_instance_test.go

+37-4
Original file line numberDiff line numberDiff line change
@@ -740,7 +740,7 @@ func TestAccComputeInstance_guestAccelerator(t *testing.T) {
740740
CheckDestroy: testAccCheckComputeInstanceDestroy,
741741
Steps: []resource.TestStep{
742742
resource.TestStep{
743-
Config: testAccComputeInstance_guestAccelerator(instanceName),
743+
Config: testAccComputeInstance_guestAccelerator(instanceName, 1),
744744
Check: resource.ComposeTestCheckFunc(
745745
testAccCheckComputeInstanceExists("google_compute_instance.foobar", &instance),
746746
testAccCheckComputeInstanceHasGuestAccelerator(&instance, "nvidia-tesla-k80", 1),
@@ -751,6 +751,29 @@ func TestAccComputeInstance_guestAccelerator(t *testing.T) {
751751

752752
}
753753

754+
func TestAccComputeInstance_guestAcceleratorSkip(t *testing.T) {
755+
t.Parallel()
756+
757+
var instance compute.Instance
758+
instanceName := fmt.Sprintf("terraform-test-%s", acctest.RandString(10))
759+
760+
resource.Test(t, resource.TestCase{
761+
PreCheck: func() { testAccPreCheck(t) },
762+
Providers: testAccProviders,
763+
CheckDestroy: testAccCheckComputeInstanceDestroy,
764+
Steps: []resource.TestStep{
765+
resource.TestStep{
766+
Config: testAccComputeInstance_guestAccelerator(instanceName, 0),
767+
Check: resource.ComposeTestCheckFunc(
768+
testAccCheckComputeInstanceExists("google_compute_instance.foobar", &instance),
769+
testAccCheckComputeInstanceLacksGuestAccelerator(&instance),
770+
),
771+
},
772+
},
773+
})
774+
775+
}
776+
754777
func TestAccComputeInstance_minCpuPlatform(t *testing.T) {
755778
t.Parallel()
756779

@@ -1219,6 +1242,16 @@ func testAccCheckComputeInstanceHasGuestAccelerator(instance *compute.Instance,
12191242
}
12201243
}
12211244

1245+
func testAccCheckComputeInstanceLacksGuestAccelerator(instance *compute.Instance) resource.TestCheckFunc {
1246+
return func(s *terraform.State) error {
1247+
if len(instance.GuestAccelerators) > 0 {
1248+
return fmt.Errorf("Expected no guest accelerators")
1249+
}
1250+
1251+
return nil
1252+
}
1253+
}
1254+
12221255
func testAccCheckComputeInstanceHasMinCpuPlatform(instance *compute.Instance, minCpuPlatform string) resource.TestCheckFunc {
12231256
return func(s *terraform.State) error {
12241257
if instance.MinCpuPlatform != minCpuPlatform {
@@ -2203,7 +2236,7 @@ resource "google_compute_subnetwork" "inst-test-subnetwork" {
22032236
`, instance, network, subnetwork)
22042237
}
22052238

2206-
func testAccComputeInstance_guestAccelerator(instance string) string {
2239+
func testAccComputeInstance_guestAccelerator(instance string, count uint8) string {
22072240
return fmt.Sprintf(`
22082241
resource "google_compute_instance" "foobar" {
22092242
name = "%s"
@@ -2226,10 +2259,10 @@ resource "google_compute_instance" "foobar" {
22262259
}
22272260
22282261
guest_accelerator {
2229-
count = 1
2262+
count = %d
22302263
type = "nvidia-tesla-k80"
22312264
}
2232-
}`, instance)
2265+
}`, instance, count)
22332266
}
22342267

22352268
func testAccComputeInstance_minCpuPlatform(instance string) string {

0 commit comments

Comments
 (0)