mirror of
https://github.com/opentofu/opentofu.git
synced 2025-01-27 00:46:25 -06:00
Add test fixture for new CBD ancestor fix
This test will fail with a cycle before we check ancestors for CreateBeforeDestroy.
This commit is contained in:
parent
cf3a259cd9
commit
40886218d5
@ -2703,3 +2703,39 @@ func TestContext2Plan_moduleVariableFromSplat(t *testing.T) {
|
||||
t.Fatalf("bad:\n%s\n\nexpected\n\n%s", actual, expected)
|
||||
}
|
||||
}
|
||||
|
||||
func TestContext2Plan_createBeforeDestroy_depends_datasource(t *testing.T) {
|
||||
m := testModule(t, "plan-cdb-depends-datasource")
|
||||
p := testProvider("aws")
|
||||
p.DiffFn = testDiffFn
|
||||
ctx := testContext2(t, &ContextOpts{
|
||||
Module: m,
|
||||
Providers: map[string]ResourceProviderFactory{
|
||||
"aws": testProviderFuncFixed(p),
|
||||
},
|
||||
})
|
||||
|
||||
plan, err := ctx.Plan()
|
||||
if err != nil {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
|
||||
if got := len(plan.Diff.Modules); got != 1 {
|
||||
t.Fatalf("got %d modules; want 1", got)
|
||||
}
|
||||
|
||||
moduleDiff := plan.Diff.Modules[0]
|
||||
|
||||
if _, ok := moduleDiff.Resources["aws_instance.foo.0"]; !ok {
|
||||
t.Fatalf("missing diff for aws_instance.foo.0")
|
||||
}
|
||||
if _, ok := moduleDiff.Resources["aws_instance.foo.1"]; !ok {
|
||||
t.Fatalf("missing diff for aws_instance.foo.1")
|
||||
}
|
||||
if _, ok := moduleDiff.Resources["data.aws_vpc.bar.0"]; !ok {
|
||||
t.Fatalf("missing diff for data.aws_vpc.bar.0")
|
||||
}
|
||||
if _, ok := moduleDiff.Resources["data.aws_vpc.bar.1"]; !ok {
|
||||
t.Fatalf("missing diff for data.aws_vpc.bar.1")
|
||||
}
|
||||
}
|
||||
|
11
terraform/test-fixtures/plan-cdb-depends-datasource/main.tf
Normal file
11
terraform/test-fixtures/plan-cdb-depends-datasource/main.tf
Normal file
@ -0,0 +1,11 @@
|
||||
resource "aws_instance" "foo" {
|
||||
count = 2
|
||||
num = "2"
|
||||
compute = "${element(data.aws_vpc.bar.*.id, count.index)}"
|
||||
lifecycle { create_before_destroy = true }
|
||||
}
|
||||
|
||||
data "aws_vpc" "bar" {
|
||||
count = 2
|
||||
foo = "${count.index}"
|
||||
}
|
Loading…
Reference in New Issue
Block a user