github.com/ezbercih/terraform@v0.1.1-0.20140729011846-3c33865e0839/builtin/providers/aws/resource_provider_test.go (about)

     1  package aws
     2  
     3  import (
     4  	"log"
     5  	"os"
     6  	"reflect"
     7  	"testing"
     8  
     9  	"github.com/hashicorp/terraform/config"
    10  	"github.com/hashicorp/terraform/terraform"
    11  )
    12  
    13  var testAccProviders map[string]terraform.ResourceProvider
    14  var testAccProvider *ResourceProvider
    15  
    16  func init() {
    17  	testAccProvider = new(ResourceProvider)
    18  	testAccProviders = map[string]terraform.ResourceProvider{
    19  		"aws": testAccProvider,
    20  	}
    21  }
    22  
    23  func TestResourceProvider_impl(t *testing.T) {
    24  	var _ terraform.ResourceProvider = new(ResourceProvider)
    25  }
    26  
    27  func TestResourceProvider_Configure(t *testing.T) {
    28  	rp := new(ResourceProvider)
    29  
    30  	raw := map[string]interface{}{
    31  		"access_key": "foo",
    32  		"secret_key": "bar",
    33  		"region":     "us-east",
    34  	}
    35  
    36  	rawConfig, err := config.NewRawConfig(raw)
    37  	if err != nil {
    38  		t.Fatalf("err: %s", err)
    39  	}
    40  
    41  	err = rp.Configure(terraform.NewResourceConfig(rawConfig))
    42  	if err != nil {
    43  		t.Fatalf("err: %s", err)
    44  	}
    45  
    46  	expected := Config{
    47  		AccessKey: "foo",
    48  		SecretKey: "bar",
    49  		Region:    "us-east",
    50  	}
    51  
    52  	if !reflect.DeepEqual(rp.Config, expected) {
    53  		t.Fatalf("bad: %#v", rp.Config)
    54  	}
    55  }
    56  
    57  func testAccPreCheck(t *testing.T) {
    58  	if v := os.Getenv("AWS_ACCESS_KEY"); v == "" {
    59  		t.Fatal("AWS_ACCESS_KEY must be set for acceptance tests")
    60  	}
    61  	if v := os.Getenv("AWS_SECRET_KEY"); v == "" {
    62  		t.Fatal("AWS_SECRET_KEY must be set for acceptance tests")
    63  	}
    64  	if v := os.Getenv("AWS_REGION"); v == "" {
    65  		log.Println("[INFO] Test: Using us-west-2 as test region")
    66  		os.Setenv("AWS_REGION", "us-west-2")
    67  	}
    68  }