15
15
package release
16
16
17
17
import (
18
+ "bytes"
19
+ "encoding/json"
18
20
"testing"
19
21
20
22
"github.com/stretchr/testify/assert"
@@ -247,11 +249,20 @@ func TestManagerisUpgrade(t *testing.T) {
247
249
name : "different values" ,
248
250
releaseName : "deployed" ,
249
251
releaseNs : "deployed-ns" ,
250
- values : map [string ]interface {}{"key" : "1" },
252
+ values : map [string ]interface {}{"key" : "1" , "int" : int32 ( 1 ) },
251
253
chart : newTestChart (t , "./testdata/simple" ),
252
- deployedRelease : newTestRelease (newTestChart (t , "./testdata/simple" ), map [string ]interface {}{"key" : "" }, "deployed" , "deployed-ns" ),
254
+ deployedRelease : newTestRelease (newTestChart (t , "./testdata/simple" ), map [string ]interface {}{"key" : "" , "int" : int64 ( 1 ) }, "deployed" , "deployed-ns" ),
253
255
want : true ,
254
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
+ },
255
266
}
256
267
for _ , test := range tests {
257
268
t .Run (test .name , func (t * testing.T ) {
@@ -277,9 +288,12 @@ func newTestRelease(chart *cpb.Chart, values map[string]interface{}, name, names
277
288
release := rpb .Mock (& rpb.MockReleaseOptions {
278
289
Name : name ,
279
290
Namespace : namespace ,
280
- Chart : chart ,
281
291
Version : 1 ,
282
292
})
293
+
294
+ buffer := & bytes.Buffer {}
295
+ _ = json .NewEncoder (buffer ).Encode (chart )
296
+ _ = json .NewDecoder (buffer ).Decode (release .Chart )
283
297
release .Config = values
284
298
return release
285
299
}
0 commit comments