github.com/rhenning/terraform@v0.8.0-beta2/terraform/graph_builder_plan_test.go (about)

     1  package terraform
     2  
     3  import (
     4  	"reflect"
     5  	"strings"
     6  	"testing"
     7  )
     8  
     9  func TestPlanGraphBuilder_impl(t *testing.T) {
    10  	var _ GraphBuilder = new(PlanGraphBuilder)
    11  }
    12  
    13  func TestPlanGraphBuilder(t *testing.T) {
    14  	b := &PlanGraphBuilder{
    15  		Module:        testModule(t, "graph-builder-plan-basic"),
    16  		Providers:     []string{"aws", "openstack"},
    17  		DisableReduce: true,
    18  	}
    19  
    20  	g, err := b.Build(RootModulePath)
    21  	if err != nil {
    22  		t.Fatalf("err: %s", err)
    23  	}
    24  
    25  	if !reflect.DeepEqual(g.Path, RootModulePath) {
    26  		t.Fatalf("bad: %#v", g.Path)
    27  	}
    28  
    29  	actual := strings.TrimSpace(g.String())
    30  	expected := strings.TrimSpace(testPlanGraphBuilderStr)
    31  	if actual != expected {
    32  		t.Fatalf("bad: %s", actual)
    33  	}
    34  }
    35  
    36  const testPlanGraphBuilderStr = `
    37  aws_instance.web
    38    aws_security_group.firewall
    39    provider.aws
    40    var.foo
    41  aws_load_balancer.weblb
    42    aws_instance.web
    43    provider.aws
    44  aws_security_group.firewall
    45    provider.aws
    46  openstack_floating_ip.random
    47    provider.openstack
    48  provider.aws
    49    openstack_floating_ip.random
    50  provider.openstack
    51  var.foo
    52  `