terraform: more tests

This commit is contained in:
Mitchell Hashimoto 2015-02-09 11:18:00 -08:00
parent d94c4392eb
commit 533d63dda3
2 changed files with 49 additions and 2 deletions

View File

@ -15,7 +15,6 @@ func (n *EvalInitProvisioner) Args() ([]EvalNode, []EvalType) {
return nil, nil
}
// TODO: test
func (n *EvalInitProvisioner) Eval(
ctx EvalContext, args []interface{}) (interface{}, error) {
return ctx.InitProvisioner(n.Name)
@ -35,7 +34,6 @@ func (n *EvalGetProvisioner) Args() ([]EvalNode, []EvalType) {
return nil, nil
}
// TODO: test
func (n *EvalGetProvisioner) Eval(
ctx EvalContext, args []interface{}) (interface{}, error) {
result := ctx.Provisioner(n.Name)

View File

@ -0,0 +1,49 @@
package terraform
import (
"testing"
)
func TestEvalInitProvisioner_impl(t *testing.T) {
var _ EvalNode = new(EvalInitProvisioner)
}
func TestEvalInitProvisioner(t *testing.T) {
n := &EvalInitProvisioner{Name: "foo"}
provisioner := &MockResourceProvisioner{}
ctx := &MockEvalContext{InitProvisionerProvisioner: provisioner}
if actual, err := n.Eval(ctx, nil); err != nil {
t.Fatalf("err: %s", err)
} else if actual != provisioner {
t.Fatalf("bad: %#v", actual)
}
if !ctx.InitProvisionerCalled {
t.Fatal("should be called")
}
if ctx.InitProvisionerName != "foo" {
t.Fatalf("bad: %#v", ctx.InitProvisionerName)
}
}
func TestEvalGetProvisioner_impl(t *testing.T) {
var _ EvalNode = new(EvalGetProvisioner)
}
func TestEvalGetProvisioner(t *testing.T) {
n := &EvalGetProvisioner{Name: "foo"}
provisioner := &MockResourceProvisioner{}
ctx := &MockEvalContext{ProvisionerProvisioner: provisioner}
if actual, err := n.Eval(ctx, nil); err != nil {
t.Fatalf("err: %s", err)
} else if actual != provisioner {
t.Fatalf("bad: %#v", actual)
}
if !ctx.ProvisionerCalled {
t.Fatal("should be called")
}
if ctx.ProvisionerName != "foo" {
t.Fatalf("bad: %#v", ctx.ProvisionerName)
}
}