package fix import ( "testing" "github.com/google/go-cmp/cmp" ) func TestFixerCleanImageName_Impl(t *testing.T) { var raw interface{} raw = new(FixerCleanImageName) if _, ok := raw.(Fixer); !ok { t.Fatalf("must be a Fixer") } } func TestFixerCleanImageName_Fix(t *testing.T) { var f FixerCleanImageName input := map[string]interface{}{ "builders": []interface{}{ map[string]interface{}{ "type": "foo", "ami_name": "heyo clean_image_name", "image_labels": map[string]interface{}{ "name": "test-packer-{{packer_version | clean_image_name}}", }, }, }, } expected := map[string]interface{}{ "builders": []map[string]interface{}{ { "type": "foo", "ami_name": "heyo clean_resource_name", "image_labels": map[string]interface{}{ "name": "test-packer-{{packer_version | clean_resource_name}}", }, }, }, } output, err := f.Fix(input) if err != nil { t.Fatalf("err: %s", err) } if diff := cmp.Diff(expected, output); diff != "" { t.Fatalf("unexpected output: %s", diff) } }