From eddc29d6e40876e38d3c10d925b58ac262457f4c Mon Sep 17 00:00:00 2001 From: Martin Atkins Date: Thu, 27 Sep 2018 17:55:14 -0700 Subject: [PATCH] core: Fix TestRefreshGraphBuilder_configOrphans We now include explicit separate nodes in the graph for deposed instances, whereas before we just dealt with them inside the main nodes. --- terraform/graph_builder_refresh_test.go | 24 +++++++++++++++++++--- terraform/node_resource_destroy_deposed.go | 2 +- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/terraform/graph_builder_refresh_test.go b/terraform/graph_builder_refresh_test.go index e27b383e5..48da3cfd3 100644 --- a/terraform/graph_builder_refresh_test.go +++ b/terraform/graph_builder_refresh_test.go @@ -42,7 +42,7 @@ func TestRefreshGraphBuilder_configOrphans(t *testing.T) { }, "data.test_object.foo.0": &ResourceState{ Type: "test_object", - Deposed: []*InstanceState{ + Deposed: []*InstanceState{ // NOTE: Real-world data resources don't get deposed &InstanceState{ ID: "foo", }, @@ -50,7 +50,7 @@ func TestRefreshGraphBuilder_configOrphans(t *testing.T) { }, "data.test_object.foo.1": &ResourceState{ Type: "test_object", - Deposed: []*InstanceState{ + Deposed: []*InstanceState{ // NOTE: Real-world data resources don't get deposed &InstanceState{ ID: "bar", }, @@ -58,7 +58,7 @@ func TestRefreshGraphBuilder_configOrphans(t *testing.T) { }, "data.test_object.foo.2": &ResourceState{ Type: "test_object", - Deposed: []*InstanceState{ + Deposed: []*InstanceState{ // NOTE: Real-world data resources don't get deposed &InstanceState{ ID: "baz", }, @@ -84,18 +84,36 @@ func TestRefreshGraphBuilder_configOrphans(t *testing.T) { expected := strings.TrimSpace(` data.test_object.foo[0] - *terraform.NodeRefreshableManagedResourceInstance provider.test - *terraform.NodeApplyableProvider +data.test_object.foo[0] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + provider.test - *terraform.NodeApplyableProvider data.test_object.foo[1] - *terraform.NodeRefreshableManagedResourceInstance provider.test - *terraform.NodeApplyableProvider +data.test_object.foo[1] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + provider.test - *terraform.NodeApplyableProvider data.test_object.foo[2] - *terraform.NodeRefreshableManagedResourceInstance provider.test - *terraform.NodeApplyableProvider +data.test_object.foo[2] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + provider.test - *terraform.NodeApplyableProvider provider.test - *terraform.NodeApplyableProvider provider.test (close) - *terraform.graphNodeCloseProvider data.test_object.foo[0] - *terraform.NodeRefreshableManagedResourceInstance + data.test_object.foo[0] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject data.test_object.foo[1] - *terraform.NodeRefreshableManagedResourceInstance + data.test_object.foo[1] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject data.test_object.foo[2] - *terraform.NodeRefreshableManagedResourceInstance + data.test_object.foo[2] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject test_object.foo - *terraform.NodeRefreshableManagedResource + test_object.foo[0] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + test_object.foo[1] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + test_object.foo[2] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject test_object.foo - *terraform.NodeRefreshableManagedResource provider.test - *terraform.NodeApplyableProvider +test_object.foo[0] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + provider.test - *terraform.NodeApplyableProvider +test_object.foo[1] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + provider.test - *terraform.NodeApplyableProvider +test_object.foo[2] (deposed 00000001) - *terraform.NodePlanDeposedResourceInstanceObject + provider.test - *terraform.NodeApplyableProvider `) if expected != actual { t.Fatalf("wrong result\n\ngot:\n%s\n\nwant:\n%s", actual, expected) diff --git a/terraform/node_resource_destroy_deposed.go b/terraform/node_resource_destroy_deposed.go index 9e74abfea..0c4a272ab 100644 --- a/terraform/node_resource_destroy_deposed.go +++ b/terraform/node_resource_destroy_deposed.go @@ -43,7 +43,7 @@ var ( ) func (n *NodePlanDeposedResourceInstanceObject) Name() string { - return fmt.Sprintf("%s (deposed %s)", n.Addr.String(), n.DeposedKey) + return fmt.Sprintf("%s (deposed %s)", n.ResourceInstanceAddr().String(), n.DeposedKey) } func (n *NodePlanDeposedResourceInstanceObject) DeposedInstanceObjectKey() states.DeposedKey {