2014-07-26 04:14:48 +02:00
|
|
|
package consul
|
|
|
|
|
|
|
|
import (
|
2016-01-21 21:54:56 +01:00
|
|
|
"os"
|
2014-07-26 04:14:48 +02:00
|
|
|
"testing"
|
|
|
|
|
2015-01-07 02:11:29 +01:00
|
|
|
consulapi "github.com/hashicorp/consul/api"
|
2014-07-26 04:14:48 +02:00
|
|
|
"github.com/hashicorp/terraform/config"
|
2014-10-13 20:35:45 +02:00
|
|
|
"github.com/hashicorp/terraform/helper/schema"
|
2014-07-26 04:14:48 +02:00
|
|
|
"github.com/hashicorp/terraform/terraform"
|
|
|
|
)
|
|
|
|
|
|
|
|
var testAccProviders map[string]terraform.ResourceProvider
|
2014-10-13 20:35:45 +02:00
|
|
|
var testAccProvider *schema.Provider
|
2014-07-26 04:14:48 +02:00
|
|
|
|
|
|
|
func init() {
|
2014-10-13 20:35:45 +02:00
|
|
|
testAccProvider = Provider().(*schema.Provider)
|
2014-07-26 04:14:48 +02:00
|
|
|
testAccProviders = map[string]terraform.ResourceProvider{
|
|
|
|
"consul": testAccProvider,
|
|
|
|
}
|
2014-10-20 21:02:37 +02:00
|
|
|
|
|
|
|
// Use the demo address for the acceptance tests
|
|
|
|
testAccProvider.ConfigureFunc = func(d *schema.ResourceData) (interface{}, error) {
|
|
|
|
conf := consulapi.DefaultConfig()
|
|
|
|
return consulapi.NewClient(conf)
|
|
|
|
}
|
2014-07-26 04:14:48 +02:00
|
|
|
}
|
|
|
|
|
2014-10-13 20:35:45 +02:00
|
|
|
func TestResourceProvider(t *testing.T) {
|
|
|
|
if err := Provider().(*schema.Provider).InternalValidate(); err != nil {
|
|
|
|
t.Fatalf("err: %s", err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2014-07-26 04:14:48 +02:00
|
|
|
func TestResourceProvider_impl(t *testing.T) {
|
2014-10-13 20:35:45 +02:00
|
|
|
var _ terraform.ResourceProvider = Provider()
|
2014-07-26 04:14:48 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
func TestResourceProvider_Configure(t *testing.T) {
|
2014-10-13 20:35:45 +02:00
|
|
|
rp := Provider()
|
2014-07-26 04:14:48 +02:00
|
|
|
|
|
|
|
raw := map[string]interface{}{
|
|
|
|
"address": "demo.consul.io:80",
|
2014-10-20 21:02:37 +02:00
|
|
|
"datacenter": "nyc3",
|
2015-05-07 01:12:32 +02:00
|
|
|
"scheme": "https",
|
2014-07-26 04:14:48 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
rawConfig, err := config.NewRawConfig(raw)
|
|
|
|
if err != nil {
|
|
|
|
t.Fatalf("err: %s", err)
|
|
|
|
}
|
|
|
|
|
|
|
|
err = rp.Configure(terraform.NewResourceConfig(rawConfig))
|
|
|
|
if err != nil {
|
|
|
|
t.Fatalf("err: %s", err)
|
|
|
|
}
|
|
|
|
}
|
2016-01-21 21:54:56 +01:00
|
|
|
|
|
|
|
func testAccPreCheck(t *testing.T) {
|
|
|
|
if v := os.Getenv("CONSUL_HTTP_ADDR"); v == "" {
|
|
|
|
t.Fatal("CONSUL_HTTP_ADDR must be set for acceptance tests")
|
|
|
|
}
|
|
|
|
}
|