terraform: ResourceDiff tests
This commit is contained in:
parent
6bef265514
commit
f032ce6c1b
|
@ -98,6 +98,10 @@ type ResourceAttrDiff struct {
|
|||
// RequiresNew returns true if the diff requires the creation of a new
|
||||
// resource (implying the destruction of the old).
|
||||
func (d *ResourceDiff) RequiresNew() bool {
|
||||
if d == nil {
|
||||
return false
|
||||
}
|
||||
|
||||
for _, rd := range d.Attributes {
|
||||
if rd.RequiresNew {
|
||||
return true
|
||||
|
|
|
@ -35,6 +35,32 @@ func TestDiff_String(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestResourceDiff_RequiresNew(t *testing.T) {
|
||||
rd := &ResourceDiff{
|
||||
Attributes: map[string]*ResourceAttrDiff{
|
||||
"foo": &ResourceAttrDiff{},
|
||||
},
|
||||
}
|
||||
|
||||
if rd.RequiresNew() {
|
||||
t.Fatal("should not require new")
|
||||
}
|
||||
|
||||
rd.Attributes["foo"].RequiresNew = true
|
||||
|
||||
if !rd.RequiresNew() {
|
||||
t.Fatal("should require new")
|
||||
}
|
||||
}
|
||||
|
||||
func TestResourceDiff_RequiresNew_nil(t *testing.T) {
|
||||
var rd *ResourceDiff
|
||||
|
||||
if rd.RequiresNew() {
|
||||
t.Fatal("should not require new")
|
||||
}
|
||||
}
|
||||
|
||||
const diffStrBasic = `
|
||||
CREATE: nodeA
|
||||
bar: "foo" => "<computed>"
|
||||
|
|
Loading…
Reference in New Issue