|
39 | 39 | - containerPort: 80
|
40 | 40 | `
|
41 | 41 |
|
| 42 | +const helmKustomization = `apiVersion: kustomize.config.k8s.io/v1beta1 |
| 43 | +kind: Kustomization |
| 44 | +helmCharts: |
| 45 | +- name: external-dns |
| 46 | + repo: oci://registry-1.docker.io/bitnamicharts |
| 47 | + version: 6.19.2 |
| 48 | + releaseName: test |
| 49 | + valuesInline: |
| 50 | + crd: |
| 51 | + create: false |
| 52 | + rbac: |
| 53 | + create: false |
| 54 | + serviceAccount: |
| 55 | + create: false |
| 56 | + service: |
| 57 | + enabled: false |
| 58 | +` |
| 59 | + |
42 | 60 | func TestScopeFlag(t *testing.T) {
|
43 | 61 | kustomizations := map[string]string{
|
44 | 62 | filepath.Join("target", "kustomization.yaml"): fmt.Sprintf(`resources:
|
@@ -66,6 +84,60 @@ func TestScopeFlag(t *testing.T) {
|
66 | 84 | loctest.CheckFs(t, testDir.String(), expected, actual)
|
67 | 85 | }
|
68 | 86 |
|
| 87 | +func TestNoVerifyFlag(t *testing.T) { |
| 88 | + kustomization := map[string]string{ |
| 89 | + "kustomization.yaml": `resources: |
| 90 | +- deployment.yaml |
| 91 | +`, |
| 92 | + "deployment.yaml": deployment, |
| 93 | + } |
| 94 | + expected, actual, target := loctest.PrepareFs(t, nil, kustomization) |
| 95 | + |
| 96 | + buffy := new(bytes.Buffer) |
| 97 | + log.SetOutput(buffy) |
| 98 | + defer func() { |
| 99 | + log.SetOutput(os.Stderr) |
| 100 | + }() |
| 101 | + cmd := localize.NewCmdLocalize(actual) |
| 102 | + require.NoError(t, cmd.Flags().Set("no-verify", "true")) |
| 103 | + err := cmd.RunE(cmd, []string{ |
| 104 | + target.String(), |
| 105 | + target.Join("dst"), |
| 106 | + }) |
| 107 | + require.NoError(t, err) |
| 108 | + |
| 109 | + loctest.SetupDir(t, expected, target.Join("dst"), kustomization) |
| 110 | + loctest.CheckFs(t, target.String(), expected, actual) |
| 111 | + |
| 112 | + successMsg := fmt.Sprintf(`SUCCESS: localized "%s" to directory %s |
| 113 | +`, target.String(), target.Join("dst")) |
| 114 | + verifyMsg := "VERIFICATION" |
| 115 | + require.NotContains(t, buffy.String(), verifyMsg) |
| 116 | + require.Contains(t, buffy.String(), successMsg) |
| 117 | +} |
| 118 | + |
| 119 | +func TestFailingBuildCmd(t *testing.T) { |
| 120 | + kustomization := map[string]string{ |
| 121 | + "kustomization.yaml": helmKustomization, |
| 122 | + } |
| 123 | + _, actual, target := loctest.PrepareFs(t, nil, kustomization) |
| 124 | + |
| 125 | + buffy := new(bytes.Buffer) |
| 126 | + log.SetOutput(buffy) |
| 127 | + defer func() { |
| 128 | + log.SetOutput(os.Stderr) |
| 129 | + }() |
| 130 | + cmd := localize.NewCmdLocalize(actual) |
| 131 | + err := cmd.RunE(cmd, []string{ |
| 132 | + target.String(), |
| 133 | + target.Join("dst"), |
| 134 | + }) |
| 135 | + require.Error(t, err) |
| 136 | + |
| 137 | + verifyMsg := "If your target directory requires flags to build" |
| 138 | + require.Contains(t, buffy.String(), verifyMsg) |
| 139 | +} |
| 140 | + |
69 | 141 | func TestOptionalArgs(t *testing.T) {
|
70 | 142 | for name, args := range map[string][]string{
|
71 | 143 | "no_target": {},
|
@@ -99,6 +171,8 @@ func TestOptionalArgs(t *testing.T) {
|
99 | 171 | loctest.SetupDir(t, expected, dst, kust)
|
100 | 172 | loctest.CheckFs(t, testDir.String(), expected, actual)
|
101 | 173 |
|
| 174 | + verifyMsg := "VERIFICATION SUCCESS" |
| 175 | + require.Contains(t, buffy.String(), verifyMsg) |
102 | 176 | successMsg := fmt.Sprintf(`SUCCESS: localized "." to directory %s
|
103 | 177 | `, dst)
|
104 | 178 | require.Contains(t, buffy.String(), successMsg)
|
@@ -128,6 +202,8 @@ func TestOutput(t *testing.T) {
|
128 | 202 | loctest.SetupDir(t, expected, target.Join("dst"), kustomization)
|
129 | 203 | loctest.CheckFs(t, target.String(), expected, actual)
|
130 | 204 |
|
| 205 | + verifyMsg := "VERIFICATION SUCCESS" |
| 206 | + require.Contains(t, buffy.String(), verifyMsg) |
131 | 207 | successMsg := fmt.Sprintf(`SUCCESS: localized "%s" to directory %s
|
132 | 208 | `, target.String(), target.Join("dst"))
|
133 | 209 | require.Contains(t, buffy.String(), successMsg)
|
|
0 commit comments