github.com/i0n/terraform@v0.4.3-0.20150506151324-010a39a58ec1/terraform/transform_root_test.go (about) 1 package terraform 2 3 import ( 4 "strings" 5 "testing" 6 ) 7 8 func TestRootTransformer(t *testing.T) { 9 mod := testModule(t, "transform-root-basic") 10 11 g := Graph{Path: RootModulePath} 12 { 13 tf := &ConfigTransformer{Module: mod} 14 if err := tf.Transform(&g); err != nil { 15 t.Fatalf("err: %s", err) 16 } 17 } 18 19 { 20 transform := &ProviderTransformer{} 21 if err := transform.Transform(&g); err != nil { 22 t.Fatalf("err: %s", err) 23 } 24 } 25 26 { 27 transform := &RootTransformer{} 28 if err := transform.Transform(&g); err != nil { 29 t.Fatalf("err: %s", err) 30 } 31 } 32 33 actual := strings.TrimSpace(g.String()) 34 expected := strings.TrimSpace(testTransformRootBasicStr) 35 if actual != expected { 36 t.Fatalf("bad:\n\n%s", actual) 37 } 38 39 root, err := g.Root() 40 if err != nil { 41 t.Fatalf("err: %s", err) 42 } 43 if _, ok := root.(graphNodeRoot); !ok { 44 t.Fatalf("bad: %#v", root) 45 } 46 } 47 48 const testTransformRootBasicStr = ` 49 aws_instance.foo 50 provider.aws 51 do_droplet.bar 52 provider.do 53 provider.aws 54 provider.do 55 root 56 aws_instance.foo 57 do_droplet.bar 58 `