|
15 | 15 | package release
|
16 | 16 |
|
17 | 17 | import (
|
18 |
| - "bytes" |
19 |
| - "encoding/json" |
20 | 18 | "testing"
|
21 | 19 |
|
22 | 20 | "github.com/stretchr/testify/assert"
|
23 |
| - cpb "helm.sh/helm/v3/pkg/chart" |
24 |
| - lpb "helm.sh/helm/v3/pkg/chart/loader" |
25 |
| - rpb "helm.sh/helm/v3/pkg/release" |
26 | 21 | appsv1 "k8s.io/api/apps/v1"
|
27 | 22 | v1 "k8s.io/api/core/v1"
|
28 | 23 | metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
@@ -216,85 +211,3 @@ func TestManagerGenerateStrategicMergePatch(t *testing.T) {
|
216 | 211 | assert.Equal(t, test.patch, string(diff))
|
217 | 212 | }
|
218 | 213 | }
|
219 |
| - |
220 |
| -func TestManagerisUpgrade(t *testing.T) { |
221 |
| - tests := []struct { |
222 |
| - name string |
223 |
| - releaseName string |
224 |
| - releaseNs string |
225 |
| - values map[string]interface{} |
226 |
| - chart *cpb.Chart |
227 |
| - deployedRelease *rpb.Release |
228 |
| - want bool |
229 |
| - }{ |
230 |
| - { |
231 |
| - name: "ok", |
232 |
| - releaseName: "deployed", |
233 |
| - releaseNs: "deployed-ns", |
234 |
| - values: map[string]interface{}{"key": "value"}, |
235 |
| - chart: newTestChart(t, "./testdata/simple"), |
236 |
| - deployedRelease: newTestRelease(newTestChart(t, "./testdata/simple"), map[string]interface{}{"key": "value"}, "deployed", "deployed-ns"), |
237 |
| - want: false, |
238 |
| - }, |
239 |
| - { |
240 |
| - name: "different chart", |
241 |
| - releaseName: "deployed", |
242 |
| - releaseNs: "deployed-ns", |
243 |
| - values: map[string]interface{}{"key": "value"}, |
244 |
| - chart: newTestChart(t, "./testdata/simple"), |
245 |
| - deployedRelease: newTestRelease(newTestChart(t, "./testdata/simpledf"), map[string]interface{}{"key": "value"}, "deployed", "deployed-ns"), |
246 |
| - want: true, |
247 |
| - }, |
248 |
| - { |
249 |
| - name: "different values", |
250 |
| - releaseName: "deployed", |
251 |
| - releaseNs: "deployed-ns", |
252 |
| - values: map[string]interface{}{"key": "1", "int": int32(1)}, |
253 |
| - chart: newTestChart(t, "./testdata/simple"), |
254 |
| - deployedRelease: newTestRelease(newTestChart(t, "./testdata/simple"), map[string]interface{}{"key": "", "int": int64(1)}, "deployed", "deployed-ns"), |
255 |
| - want: true, |
256 |
| - }, |
257 |
| - { |
258 |
| - name: "nil values", |
259 |
| - releaseName: "deployed", |
260 |
| - releaseNs: "deployed-ns", |
261 |
| - values: nil, |
262 |
| - chart: newTestChart(t, "./testdata/simple"), |
263 |
| - deployedRelease: newTestRelease(newTestChart(t, "./testdata/simple"), map[string]interface{}{}, "deployed", "deployed-ns"), |
264 |
| - want: false, |
265 |
| - }, |
266 |
| - } |
267 |
| - for _, test := range tests { |
268 |
| - t.Run(test.name, func(t *testing.T) { |
269 |
| - m := manager{ |
270 |
| - releaseName: test.releaseName, |
271 |
| - namespace: test.releaseNs, |
272 |
| - values: test.values, |
273 |
| - chart: test.chart, |
274 |
| - } |
275 |
| - isUpgrade, err := m.isUpgrade(test.deployedRelease) |
276 |
| - assert.Equal(t, test.want, isUpgrade) |
277 |
| - assert.Equal(t, nil, err) |
278 |
| - }) |
279 |
| - } |
280 |
| -} |
281 |
| - |
282 |
| -func newTestChart(t *testing.T, path string) *cpb.Chart { |
283 |
| - chart, err := lpb.Load(path) |
284 |
| - assert.Nil(t, err) |
285 |
| - return chart |
286 |
| -} |
287 |
| - |
288 |
| -func newTestRelease(chart *cpb.Chart, values map[string]interface{}, name, namespace string) *rpb.Release { // nolint: unparam |
289 |
| - release := rpb.Mock(&rpb.MockReleaseOptions{ |
290 |
| - Name: name, |
291 |
| - Namespace: namespace, |
292 |
| - Version: 1, |
293 |
| - }) |
294 |
| - |
295 |
| - buffer := &bytes.Buffer{} |
296 |
| - _ = json.NewEncoder(buffer).Encode(chart) |
297 |
| - _ = json.NewDecoder(buffer).Decode(release.Chart) |
298 |
| - release.Config = values |
299 |
| - return release |
300 |
| -} |
0 commit comments