50 lines
1.1 KiB
Go
50 lines
1.1 KiB
Go
package atlas
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/hashicorp/terraform/backend"
|
|
"github.com/hashicorp/terraform/config"
|
|
"github.com/hashicorp/terraform/terraform"
|
|
)
|
|
|
|
func TestImpl(t *testing.T) {
|
|
var _ backend.Backend = new(Backend)
|
|
var _ backend.CLI = new(Backend)
|
|
}
|
|
|
|
func TestConfigure_envAddr(t *testing.T) {
|
|
defer os.Setenv("ATLAS_ADDRESS", os.Getenv("ATLAS_ADDRESS"))
|
|
os.Setenv("ATLAS_ADDRESS", "http://foo.com")
|
|
|
|
b := &Backend{}
|
|
err := b.Configure(terraform.NewResourceConfig(config.TestRawConfig(t, map[string]interface{}{
|
|
"name": "foo/bar",
|
|
})))
|
|
if err != nil {
|
|
t.Fatalf("err: %s", err)
|
|
}
|
|
|
|
if b.stateClient.Server != "http://foo.com" {
|
|
t.Fatalf("bad: %#v", b.stateClient)
|
|
}
|
|
}
|
|
|
|
func TestConfigure_envToken(t *testing.T) {
|
|
defer os.Setenv("ATLAS_TOKEN", os.Getenv("ATLAS_TOKEN"))
|
|
os.Setenv("ATLAS_TOKEN", "foo")
|
|
|
|
b := &Backend{}
|
|
err := b.Configure(terraform.NewResourceConfig(config.TestRawConfig(t, map[string]interface{}{
|
|
"name": "foo/bar",
|
|
})))
|
|
if err != nil {
|
|
t.Fatalf("err: %s", err)
|
|
}
|
|
|
|
if b.stateClient.AccessToken != "foo" {
|
|
t.Fatalf("bad: %#v", b.stateClient)
|
|
}
|
|
}
|