From 004c2056a7f111bd633c2850ceae284f57c9b1e0 Mon Sep 17 00:00:00 2001 From: Martin Atkins Date: Wed, 15 May 2019 15:56:30 -0700 Subject: [PATCH] configs/configupgrade: Use single-line syntax for empty object exprs --- .../test-fixtures/valid/variable-type/input/variables.tf | 4 ++++ .../test-fixtures/valid/variable-type/want/variables.tf | 4 ++++ configs/configupgrade/upgrade_expr.go | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/configs/configupgrade/test-fixtures/valid/variable-type/input/variables.tf b/configs/configupgrade/test-fixtures/valid/variable-type/input/variables.tf index 03ab6b1bda..59b3c585dc 100644 --- a/configs/configupgrade/test-fixtures/valid/variable-type/input/variables.tf +++ b/configs/configupgrade/test-fixtures/valid/variable-type/input/variables.tf @@ -4,8 +4,12 @@ variable "s" { variable "l" { type = "list" + + default = [] } variable "m" { type = "map" + + default = {} } diff --git a/configs/configupgrade/test-fixtures/valid/variable-type/want/variables.tf b/configs/configupgrade/test-fixtures/valid/variable-type/want/variables.tf index 317e92dc9e..2059d9e2d5 100644 --- a/configs/configupgrade/test-fixtures/valid/variable-type/want/variables.tf +++ b/configs/configupgrade/test-fixtures/valid/variable-type/want/variables.tf @@ -4,8 +4,12 @@ variable "s" { variable "l" { type = list(string) + + default = [] } variable "m" { type = map(string) + + default = {} } diff --git a/configs/configupgrade/upgrade_expr.go b/configs/configupgrade/upgrade_expr.go index 0be5f14486..6bfa256689 100644 --- a/configs/configupgrade/upgrade_expr.go +++ b/configs/configupgrade/upgrade_expr.go @@ -184,6 +184,10 @@ Value: buf.WriteString("]") case *hcl1ast.ObjectType: + if len(tv.List.Items) == 0 { + buf.WriteString("{}") + break + } buf.WriteString("{\n") for _, item := range tv.List.Items { if len(item.Keys) != 1 {