@@ -29,15 +29,15 @@ func Test_BundleRenderer_ValidatesBundle(t *testing.T) {
29
29
},
30
30
},
31
31
}
32
- objs , err := renderer .Render (render.RegistryV1 {}, "" , nil )
32
+ objs , err := renderer .Render (render.RegistryV1 {}, "" )
33
33
require .Nil (t , objs )
34
34
require .Error (t , err )
35
35
require .Contains (t , err .Error (), "this bundle is invalid" )
36
36
}
37
37
38
38
func Test_BundleRenderer_CreatesCorrectDefaultOptions (t * testing.T ) {
39
39
expectedInstallNamespace := "install-namespace"
40
- expectedTargetNamespaces := []string {"ns-one" , "ns-two " }
40
+ expectedTargetNamespaces := []string {"" }
41
41
expectedUniqueNameGenerator := render .DefaultUniqueNameGenerator
42
42
43
43
renderer := render.BundleRenderer {
@@ -51,7 +51,34 @@ func Test_BundleRenderer_CreatesCorrectDefaultOptions(t *testing.T) {
51
51
},
52
52
}
53
53
54
- _ , _ = renderer .Render (render.RegistryV1 {}, expectedInstallNamespace , expectedTargetNamespaces )
54
+ _ , _ = renderer .Render (render.RegistryV1 {}, expectedInstallNamespace )
55
+ }
56
+
57
+ func Test_BundleRenderer_AppliesUserOptions (t * testing.T ) {
58
+ isOptionApplied := false
59
+ _ , _ = render.BundleRenderer {}.Render (render.RegistryV1 {}, "install-namespace" , func (options * render.Options ) {
60
+ isOptionApplied = true
61
+ })
62
+ require .True (t , isOptionApplied )
63
+ }
64
+
65
+ func Test_WithTargetNamespaces (t * testing.T ) {
66
+ opts := & render.Options {
67
+ TargetNamespaces : []string {"target-namespace" },
68
+ }
69
+ render .WithTargetNamespaces ("a" , "b" , "c" )(opts )
70
+ require .Equal (t , []string {"a" , "b" , "c" }, opts .TargetNamespaces )
71
+ }
72
+
73
+ func Test_WithUniqueNameGenerator (t * testing.T ) {
74
+ opts := & render.Options {
75
+ UniqueNameGenerator : render .DefaultUniqueNameGenerator ,
76
+ }
77
+ render .WithUniqueNameGenerator (func (s string , i interface {}) (string , error ) {
78
+ return "a man needs a name" , nil
79
+ })(opts )
80
+ generatedName , _ := opts .UniqueNameGenerator ("" , nil )
81
+ require .Equal (t , "a man needs a name" , generatedName )
55
82
}
56
83
57
84
func Test_BundleRenderer_CallsResourceGenerators (t * testing.T ) {
@@ -65,7 +92,7 @@ func Test_BundleRenderer_CallsResourceGenerators(t *testing.T) {
65
92
},
66
93
},
67
94
}
68
- objs , err := renderer .Render (render.RegistryV1 {}, "" , nil )
95
+ objs , err := renderer .Render (render.RegistryV1 {}, "" )
69
96
require .NoError (t , err )
70
97
require .Equal (t , []client.Object {& corev1.Namespace {}, & corev1.Service {}, & appsv1.Deployment {}}, objs )
71
98
}
@@ -81,7 +108,7 @@ func Test_BundleRenderer_ReturnsResourceGeneratorErrors(t *testing.T) {
81
108
},
82
109
},
83
110
}
84
- objs , err := renderer .Render (render.RegistryV1 {}, "" , nil )
111
+ objs , err := renderer .Render (render.RegistryV1 {}, "" )
85
112
require .Nil (t , objs )
86
113
require .Error (t , err )
87
114
require .Contains (t , err .Error (), "generator error" )
0 commit comments