Files
kustomize/api/krusty/managedbylabel_test.go
2022-12-13 21:04:50 +00:00

66 lines
1.2 KiB
Go

// Copyright 2020 The Kubernetes Authors.
// SPDX-License-Identifier: Apache-2.0
package krusty_test
import (
"testing"
kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
)
const expected = `apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/managed-by: kustomize-v444.333.222
name: myService
spec:
ports:
- port: 7002
`
// This test may failed when running on package tests using the go command because `v444.333.222` is set on makefile.
func TestAddManagedbyLabel(t *testing.T) {
tests := []struct {
kustFile string
managedByFlag bool
expected string
}{
{
kustFile: `
resources:
- service.yaml
`,
managedByFlag: true,
expected: expected,
},
{
kustFile: `
resources:
- service.yaml
buildMetadata: [managedByLabel]
`,
managedByFlag: false,
expected: expected,
},
}
for _, tc := range tests {
th := kusttest_test.MakeHarness(t)
th.WriteF("service.yaml", `
apiVersion: v1
kind: Service
metadata:
name: myService
spec:
ports:
- port: 7002
`)
th.WriteK(".", tc.kustFile)
options := th.MakeDefaultOptions()
options.AddManagedbyLabel = tc.managedByFlag
m := th.Run(".", options)
th.AssertActualEqualsExpected(m, tc.expected)
}
}