diff --git a/helper/resource/testing_new_config.go b/helper/resource/testing_new_config.go index 17d3745fa..9747eaf6e 100644 --- a/helper/resource/testing_new_config.go +++ b/helper/resource/testing_new_config.go @@ -205,6 +205,26 @@ func testStepNewConfig(ctx context.Context, t testing.T, c TestCase, wd *plugint } } } + + // Run state checks + if len(step.ConfigStateChecks) > 0 { + var state *tfjson.State + + err = runProviderCommand(ctx, t, func() error { + var err error + state, err = wd.State(ctx) + return err + }, wd, providers) + + if err != nil { + return fmt.Errorf("Error retrieving post-apply, post-refresh state: %w", err) + } + + err = runStateChecks(ctx, t, state, step.ConfigStateChecks) + if err != nil { + return fmt.Errorf("Post-apply refresh state check(s) failed:\n%w", err) + } + } } // Test for perpetual diffs by performing a plan, a refresh, and another plan @@ -313,26 +333,6 @@ func testStepNewConfig(ctx context.Context, t testing.T, c TestCase, wd *plugint } } - // Run post-apply, post-refresh state checks - if len(step.ConfigStateChecks) > 0 { - var state *tfjson.State - - err = runProviderCommand(ctx, t, func() error { - var err error - state, err = wd.State(ctx) - return err - }, wd, providers) - - if err != nil { - return fmt.Errorf("Error retrieving post-apply, post-refresh state: %w", err) - } - - err = runStateChecks(ctx, t, state, step.ConfigStateChecks) - if err != nil { - return fmt.Errorf("Post-apply refresh state check(s) failed:\n%w", err) - } - } - // check if plan is empty if !planIsEmpty(plan, helper.TerraformVersion()) && !step.ExpectNonEmptyPlan { var stdout string