diff --git a/pkg/cloudprovider/providers/gce/gce_loadbalancer_internal_test.go b/pkg/cloudprovider/providers/gce/gce_loadbalancer_internal_test.go index 8c3eaaf9d03..4fa4eeda19c 100644 --- a/pkg/cloudprovider/providers/gce/gce_loadbalancer_internal_test.go +++ b/pkg/cloudprovider/providers/gce/gce_loadbalancer_internal_test.go @@ -317,3 +317,24 @@ func TestEnsureInternalLoadBalancerDeleted(t *testing.T) { require.Error(t, err) assert.Nil(t, fwdRule) } + +func TestEnsureInternalLoadBalancerDeletedTwiceDoesNotError(t *testing.T) { + projectID := "test-project" + region := "us-central1" + zoneName := "us-central1-b" + clusterName := "Test Cluster Name" + clusterID := "test-cluster-id" + + gce, err := fakeGCECloud(projectID, region, zoneName) + require.NoError(t, err) + + _, err = createInternalLoadBalancer(gce, nil, []string{"test-node-1"}, clusterName, clusterID, zoneName) + assert.NoError(t, err) + + err = gce.ensureInternalLoadBalancerDeleted(clusterName, clusterID, fakeApiService) + assert.NoError(t, err) + + // Deleting the loadbalancer and resources again should not cause an error. + err = gce.ensureInternalLoadBalancerDeleted(clusterName, clusterID, fakeApiService) + assert.NoError(t, err) +}