Add Generator Test

This commit is contained in:
Jeffrey Regan
2020-04-15 16:00:06 -07:00
parent a446a4f4fe
commit d15a573544

View File

@@ -12,12 +12,14 @@ import (
kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func findSecret(m resmap.ResMap) *resource.Resource { func findSecret(m resmap.ResMap, prefix string) *resource.Resource {
for _, r := range m.Resources() { for _, r := range m.Resources() {
if r.OrgId().Kind == "Secret" { if r.OrgId().Kind == "Secret" {
if prefix == "" || strings.HasPrefix(r.GetName(), prefix) {
return r return r
} }
} }
}
return nil return nil
} }
@@ -77,7 +79,7 @@ metadata:
m := th.Run("/whatever", th.MakeDefaultOptions()) m := th.Run("/whatever", th.MakeDefaultOptions())
secret := findSecret(m) secret := findSecret(m, "")
if secret == nil { if secret == nil {
t.Errorf("Expected to find a Secret") t.Errorf("Expected to find a Secret")
} }
@@ -90,7 +92,7 @@ metadata:
"disableNameSuffixHash: false", "disableNameSuffixHash: false",
"disableNameSuffixHash: true", -1)) "disableNameSuffixHash: true", -1))
m = th.Run("/whatever", th.MakeDefaultOptions()) m = th.Run("/whatever", th.MakeDefaultOptions())
secret = findSecret(m) secret = findSecret(m, "")
if secret == nil { if secret == nil {
t.Errorf("Expected to find a Secret") t.Errorf("Expected to find a Secret")
} }
@@ -98,3 +100,47 @@ metadata:
t.Errorf("unexpected secret resource name: %s", secret.GetName()) t.Errorf("unexpected secret resource name: %s", secret.GetName())
} }
} }
func TestDisableNameSuffixHashPerObject(t *testing.T) {
th := kusttest_test.MakeHarness(t)
const kustomizationContent = `
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
generatorOptions:
disableNameSuffixHash: false
secretGenerator:
- name: nohash
options:
disableNameSuffixHash: true
literals:
- DB_USERNAME=admin
- DB_PASSWORD=somepw
type: Opaque
- name: yeshash
options:
disableNameSuffixHash: false
literals:
- DB_USERNAME=admin
- DB_PASSWORD=somepw
type: Opaque
`
th.WriteK("/whatever", kustomizationContent)
m := th.Run("/whatever", th.MakeDefaultOptions())
secret := findSecret(m, "nohash")
if secret == nil {
t.Errorf("Expected to find a Secret")
}
if secret.GetName() != "nohash" {
t.Errorf("unexpected secret resource name: %s", secret.GetName())
}
secret = findSecret(m, "yeshash")
if secret == nil {
t.Errorf("Expected to find a Secret")
}
if secret.GetName() != "yeshash-mcgcmdcm69" {
t.Errorf("unexpected secret resource name: %s", secret.GetName())
}
}