From 22dd4303bcf8e88f1b28d069911027c2765dcf5c Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Sat, 12 Nov 2016 08:24:09 -0800 Subject: [PATCH] terraform: tests for ReferenceMap for module paths --- terraform/transform_reference_test.go | 54 +++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/terraform/transform_reference_test.go b/terraform/transform_reference_test.go index 544af6b04..6468bdf7e 100644 --- a/terraform/transform_reference_test.go +++ b/terraform/transform_reference_test.go @@ -138,6 +138,54 @@ func TestReferenceTransformer_backupPrimary(t *testing.T) { } } +func TestReferenceTransformer_modulePath(t *testing.T) { + g := Graph{Path: RootModulePath} + g.Add(&graphNodeRefParentTest{ + NameValue: "A", + Names: []string{"A"}, + PathValue: []string{"foo"}, + }) + g.Add(&graphNodeRefChildTest{ + NameValue: "B", + Refs: []string{"module.foo"}, + }) + + tf := &ReferenceTransformer{} + if err := tf.Transform(&g); err != nil { + t.Fatalf("err: %s", err) + } + + actual := strings.TrimSpace(g.String()) + expected := strings.TrimSpace(testTransformRefModulePathStr) + if actual != expected { + t.Fatalf("bad:\n\n%s", actual) + } +} + +func TestReferenceTransformer_modulePathNormalized(t *testing.T) { + g := Graph{Path: RootModulePath} + g.Add(&graphNodeRefParentTest{ + NameValue: "A", + Names: []string{"A"}, + PathValue: []string{"root", "foo"}, + }) + g.Add(&graphNodeRefChildTest{ + NameValue: "B", + Refs: []string{"module.foo"}, + }) + + tf := &ReferenceTransformer{} + if err := tf.Transform(&g); err != nil { + t.Fatalf("err: %s", err) + } + + actual := strings.TrimSpace(g.String()) + expected := strings.TrimSpace(testTransformRefModulePathStr) + if actual != expected { + t.Fatalf("bad:\n\n%s", actual) + } +} + func TestReferenceMapReferences(t *testing.T) { cases := map[string]struct { Nodes []dag.Vertex @@ -265,6 +313,12 @@ B C ` +const testTransformRefModulePathStr = ` +A +B + A +` + const testTransformRefPathStr = ` A B