package dockerfile import ( "strings" "testing" "github.com/docker/docker/builder/dockerfile/parser" "github.com/stretchr/testify/assert" ) func TestAddNodesForLabelOption(t *testing.T) { dockerfile := "FROM scratch" result, err := parser.Parse(strings.NewReader(dockerfile)) assert.NoError(t, err) labels := map[string]string{ "org.e": "cli-e", "org.d": "cli-d", "org.c": "cli-c", "org.b": "cli-b", "org.a": "cli-a", } nodes := result.AST addNodesForLabelOption(nodes, labels) expected := []string{ "FROM scratch", `LABEL "org.a"='cli-a' "org.b"='cli-b' "org.c"='cli-c' "org.d"='cli-d' "org.e"='cli-e'`, } assert.Len(t, nodes.Children, 2) for i, v := range nodes.Children { assert.Equal(t, expected[i], v.Original) } }