github.com/andresvia/terraform@v0.6.15-0.20160412045437-d51c75946785/builtin/providers/consul/resource_provider_test.go (about) 1 package consul 2 3 import ( 4 "os" 5 "testing" 6 7 consulapi "github.com/hashicorp/consul/api" 8 "github.com/hashicorp/terraform/config" 9 "github.com/hashicorp/terraform/helper/schema" 10 "github.com/hashicorp/terraform/terraform" 11 ) 12 13 var testAccProviders map[string]terraform.ResourceProvider 14 var testAccProvider *schema.Provider 15 16 func init() { 17 testAccProvider = Provider().(*schema.Provider) 18 testAccProviders = map[string]terraform.ResourceProvider{ 19 "consul": testAccProvider, 20 } 21 22 // Use the demo address for the acceptance tests 23 testAccProvider.ConfigureFunc = func(d *schema.ResourceData) (interface{}, error) { 24 conf := consulapi.DefaultConfig() 25 return consulapi.NewClient(conf) 26 } 27 } 28 29 func TestResourceProvider(t *testing.T) { 30 if err := Provider().(*schema.Provider).InternalValidate(); err != nil { 31 t.Fatalf("err: %s", err) 32 } 33 } 34 35 func TestResourceProvider_impl(t *testing.T) { 36 var _ terraform.ResourceProvider = Provider() 37 } 38 39 func TestResourceProvider_Configure(t *testing.T) { 40 rp := Provider() 41 42 raw := map[string]interface{}{ 43 "address": "demo.consul.io:80", 44 "datacenter": "nyc3", 45 "scheme": "https", 46 } 47 48 rawConfig, err := config.NewRawConfig(raw) 49 if err != nil { 50 t.Fatalf("err: %s", err) 51 } 52 53 err = rp.Configure(terraform.NewResourceConfig(rawConfig)) 54 if err != nil { 55 t.Fatalf("err: %s", err) 56 } 57 } 58 59 func testAccPreCheck(t *testing.T) { 60 if v := os.Getenv("CONSUL_HTTP_ADDR"); v == "" { 61 t.Fatal("CONSUL_HTTP_ADDR must be set for acceptance tests") 62 } 63 }