Skip to content

Commit 25c7def

Browse files
bfladpaddycarver
authored andcommitted
internal/plugintest: Output saved plans in human readable format
Reference: #578 Reference: #604 Restores v2.0.3 behavior and renames the function slightly for additional clarity on its intent. Previously with consistently failing provider check: ``` === CONT TestAccAWSDmsReplicationTask_basic TestAccAWSDmsReplicationTask_basic: resource_aws_dms_replication_task_test.go:18: Step 1/3 error: After applying this test step, the plan was not empty. stdout: {"format_version":"0.1","terraform_version":"0.12.29","planned_values":{"root_module":{"resources":[{"address":"aws_dms_endpoint.dms_endpoint_source","mode":"managed","type":"aws_dms_endpoint","name":"dms_endpoint_source","provider_name":"aws","schema_version":0,"values":{"certificate_arn":"","database_name":"tf-test-dms-db","elasticsearch_settings":[],"endpoint_arn":"arn:aws:dms:us-west-2:*******:endpoint:JIH35DGCIVAHLVA4L3H7S2QJKNIMW5K2X7LDSAY","endpoint_id":"tf-test-dms-endpoint-source-0qkeppvm","endpoint_type":"source","engine_name":"aurora","extra_connection_attributes":"","id":"tf-test-dms-endpoint-source-0qkeppvm","kafka_settings":[],"kinesis_settings":[],"kms_key_arn":"arn:aws:kms:us-west-2:*******:key/f5709827-76e0-4544-b2ec-9d09d1138bb1","mongodb_settings":[],"password":"tftest","port":3306,"s3_settings":[],"server_name":"tf-test-cluster.cluster-xxxxxxx.us-west-2.rds.amazonaws.com","service_access_role":null,"ssl_mode":"none","tags":null,"username":"tftest"}},{"address":"aws_dms_endpoint.dms_endpoint_target","mode":"managed","type":"aws_dms_endpoint","name":"dms_endpoint_target","provider_name":"aws","schema_version":0,"values":{"certificate_arn":"","database_name":"tf-test-dms-db","elasticsearch_settings":[],"endpoint_arn":"arn:........... ``` Now with local Go Module replace directive: ``` === CONT TestAccAWSDmsReplicationTask_basic resource_aws_dms_replication_task_test.go:18: Step 1/3 error: After applying this test step, the plan was not empty. stdout: An execution plan has been generated and is shown below. Resource actions are indicated with the following symbols: ~ update in-place Terraform will perform the following actions: # aws_dms_replication_task.dms_replication_task will be updated in-place ~ resource "aws_dms_replication_task" "dms_replication_task" { id = "tf-test-dms-replication-task-qsk63z02" migration_type = "full-load" replication_instance_arn = "arn:aws:dms:us-west-2:--OMITTED--:rep:AZCTZFYYTBQUNMNFP3LDR3A5RAC44QTLT36UC4I" replication_task_arn = "arn:aws:dms:us-west-2:--OMITTED--:task:YS3DREABEI2X4KW46QHESNSZIBOAZXU4WLIPH5I" replication_task_id = "tf-test-dms-replication-task-qsk63z02" ~ replication_task_settings = jsonencode( ~ { ```
1 parent 951f045 commit 25c7def

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

helper/resource/testing_new_config.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ func testStepNewConfig(t testing.T, c TestCase, wd *plugintest.WorkingDir, step
144144
var stdout string
145145
err = runProviderCommand(t, func() error {
146146
var err error
147-
stdout, err = wd.SavedPlanStdout()
147+
stdout, err = wd.SavedPlanRawStdout()
148148
return err
149149
}, wd, c.ProviderFactories)
150150
if err != nil {
@@ -188,7 +188,7 @@ func testStepNewConfig(t testing.T, c TestCase, wd *plugintest.WorkingDir, step
188188
var stdout string
189189
err = runProviderCommand(t, func() error {
190190
var err error
191-
stdout, err = wd.SavedPlanStdout()
191+
stdout, err = wd.SavedPlanRawStdout()
192192
return err
193193
}, wd, c.ProviderFactories)
194194
if err != nil {

internal/plugintest/working_dir.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -231,11 +231,11 @@ func (wd *WorkingDir) SavedPlan() (*tfjson.Plan, error) {
231231
return wd.tf.ShowPlanFile(context.Background(), wd.planFilename(), tfexec.Reattach(wd.reattachInfo))
232232
}
233233

234-
// SavedPlanStdout returns a stdout capture of the current saved plan file, if any.
234+
// SavedPlanRawStdout returns a human readable stdout capture of the current saved plan file, if any.
235235
//
236-
// If no plan is saved or if the plan file cannot be read, SavedPlanStdout returns
236+
// If no plan is saved or if the plan file cannot be read, SavedPlanRawStdout returns
237237
// an error.
238-
func (wd *WorkingDir) SavedPlanStdout() (string, error) {
238+
func (wd *WorkingDir) SavedPlanRawStdout() (string, error) {
239239
if !wd.HasSavedPlan() {
240240
return "", fmt.Errorf("there is no current saved plan")
241241
}
@@ -244,7 +244,7 @@ func (wd *WorkingDir) SavedPlanStdout() (string, error) {
244244

245245
wd.tf.SetStdout(&ret)
246246
defer wd.tf.SetStdout(ioutil.Discard)
247-
_, err := wd.tf.ShowPlanFile(context.Background(), wd.planFilename(), tfexec.Reattach(wd.reattachInfo))
247+
_, err := wd.tf.ShowPlanFileRaw(context.Background(), wd.planFilename(), tfexec.Reattach(wd.reattachInfo))
248248
if err != nil {
249249
return "", err
250250
}

0 commit comments

Comments
 (0)