@@ -21,16 +21,12 @@ package configmanager
2121
2222import (
2323 "context"
24- "reflect"
25- "testing"
2624
2725 . "github.com/onsi/ginkgo/v2"
2826 . "github.com/onsi/gomega"
2927
30- "github.com/stretchr/testify/assert"
3128 corev1 "k8s.io/api/core/v1"
3229 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
33- "k8s.io/apimachinery/pkg/util/yaml"
3430 "sigs.k8s.io/controller-runtime/pkg/client"
3531
3632 appsv1 "github.com/apecloud/kubeblocks/apis/apps/v1"
@@ -43,8 +39,6 @@ var _ = Describe("Config Builder Test", func() {
4339 const (
4440 scriptsName = "script_cm"
4541 scriptsNS = "default"
46-
47- lazyRenderedTemplateName = "lazy-rendered-template"
4842 )
4943
5044 var mockK8sCli * testutil.K8sClientMockHelper
@@ -58,8 +52,6 @@ var _ = Describe("Config Builder Test", func() {
5852 DeferCleanup (mockK8sCli .Finish )
5953 })
6054
61- syncFn := func (sync bool ) * bool { r := sync ; return & r }
62-
6355 newVolumeMounts := func () []corev1.VolumeMount {
6456 return []corev1.VolumeMount {
6557 {
@@ -71,13 +63,6 @@ var _ = Describe("Config Builder Test", func() {
7163 shellHandle := & parametersv1alpha1.ShellTrigger {
7264 Command : []string {"pwd" },
7365 }
74- scriptHandle := & parametersv1alpha1.TPLScriptTrigger {
75- Sync : sync ,
76- ScriptConfig : parametersv1alpha1.ScriptConfig {
77- ScriptConfigMapRef : "reload-script" ,
78- Namespace : scriptsNS ,
79- },
80- }
8166 autoHandle := & parametersv1alpha1.AutoTrigger {
8267 ProcessName : "postgres" ,
8368 }
@@ -86,9 +71,6 @@ var _ = Describe("Config Builder Test", func() {
8671 case parametersv1alpha1 .ShellType :
8772 return & parametersv1alpha1.ReloadAction {
8873 ShellTrigger : shellHandle }
89- case parametersv1alpha1 .TPLScriptType :
90- return & parametersv1alpha1.ReloadAction {
91- TPLScriptTrigger : scriptHandle }
9274 case parametersv1alpha1 .AutoType :
9375 return & parametersv1alpha1.ReloadAction {
9476 AutoTrigger : autoHandle }
@@ -132,35 +114,8 @@ var _ = Describe("Config Builder Test", func() {
132114 return param
133115 }
134116
135- mockTplScriptCM := func () {
136- mockK8sCli .MockGetMethod (testutil .WithGetReturned (testutil .WithConstructSimpleGetResult ([]client.Object {
137- & corev1.ConfigMap {
138- ObjectMeta : metav1.ObjectMeta {
139- Name : "reload-script" ,
140- Namespace : scriptsNS ,
141- },
142- Data : map [string ]string {
143- "reload.yaml" : `
144- scripts: reload.tpl
145- fileRegex: my.cnf
146- formatterConfig:
147- format: ini
148- ` ,
149- }},
150- & corev1.ConfigMap {
151- ObjectMeta : metav1.ObjectMeta {
152- Name : lazyRenderedTemplateName ,
153- Namespace : scriptsNS ,
154- },
155- Data : map [string ]string {
156- "my.cnf" : "" ,
157- }},
158- }), testutil .WithAnyTimes ()))
159- mockK8sCli .MockCreateMethod (testutil .WithCreateReturned (testutil .WithCreatedSucceedResult (), testutil .WithAnyTimes ()))
160- }
161-
162117 Context ("TestBuildConfigManagerContainer" , func () {
163- It ("builds shellTrigger reloader correctly" , func () {
118+ It ("build shell reloader correctly" , func () {
164119 mockK8sCli .MockGetMethod (testutil .WithGetReturned (testutil .WithConstructSimpleGetResult ([]client.Object {
165120 & corev1.ConfigMap {
166121 ObjectMeta : metav1.ObjectMeta {
@@ -180,107 +135,5 @@ formatterConfig:
180135 }
181136 Expect (BuildConfigManagerContainerParams (mockK8sCli .Client (), context .TODO (), param )).Should (Succeed ())
182137 })
183-
184- It ("builds tplScriptsTrigger reloader correctly" , func () {
185- mockTplScriptCM ()
186- param := newCMBuildParams (false )
187- reloadOptions := newReloadOptions (parametersv1alpha1 .TPLScriptType , syncFn (true ))
188- for i := range param .ConfigSpecsBuildParams {
189- buildParam := & param .ConfigSpecsBuildParams [i ]
190- buildParam .ReloadAction = reloadOptions
191- buildParam .ReloadType = parametersv1alpha1 .TPLScriptType
192- }
193- Expect (BuildConfigManagerContainerParams (mockK8sCli .Client (), context .TODO (), param )).Should (Succeed ())
194- for _ , arg := range []string {`--operator-update-enable` } {
195- Expect (param .Args ).Should (ContainElement (arg ))
196- }
197- })
198-
199- It ("builds tplScriptsTrigger reloader correctly with sync" , func () {
200- mockTplScriptCM ()
201- param := newCMBuildParams (false )
202- reloadOptions := newReloadOptions (parametersv1alpha1 .TPLScriptType , syncFn (false ))
203- for i := range param .ConfigSpecsBuildParams {
204- buildParam := & param .ConfigSpecsBuildParams [i ]
205- buildParam .ReloadAction = reloadOptions
206- buildParam .ReloadType = parametersv1alpha1 .TPLScriptType
207- }
208- Expect (BuildConfigManagerContainerParams (mockK8sCli .Client (), context .TODO (), param )).Should (Succeed ())
209- })
210138 })
211-
212139})
213-
214- func TestCheckAndUpdateReloadYaml (t * testing.T ) {
215- customEqual := func (l , r map [string ]string ) bool {
216- if len (l ) != len (r ) {
217- return false
218- }
219- var err error
220- for k , v := range l {
221- var lv any
222- var rv any
223- err = yaml .Unmarshal ([]byte (v ), & lv )
224- assert .Nil (t , err )
225- err = yaml .Unmarshal ([]byte (r [k ]), & rv )
226- assert .Nil (t , err )
227- if ! reflect .DeepEqual (lv , rv ) {
228- return false
229- }
230- }
231- return true
232- }
233-
234- type args struct {
235- data map [string ]string
236- reloadConfig string
237- formatterConfig * parametersv1alpha1.FileFormatConfig
238- }
239- tests := []struct {
240- name string
241- args args
242- want map [string ]string
243- wantErr bool
244- }{{
245- name : "testCheckAndUpdateReloadYaml" ,
246- args : args {
247- data : map [string ]string {"reload.yaml" : `
248- fileRegex: my.cnf
249- scripts: reload.tpl
250- ` },
251- reloadConfig : "reload.yaml" ,
252- formatterConfig : & parametersv1alpha1.FileFormatConfig {
253- Format : parametersv1alpha1 .Ini ,
254- },
255- },
256- wantErr : false ,
257- want : map [string ]string {"reload.yaml" : `
258- scripts: reload.tpl
259- fileRegex: my.cnf
260- formatterConfig:
261- format: ini
262- ` ,
263- },
264- }, {
265- name : "testCheckAndUpdateReloadYaml" ,
266- args : args {
267- data : map [string ]string {},
268- reloadConfig : "reload.yaml" ,
269- formatterConfig : & parametersv1alpha1.FileFormatConfig {Format : parametersv1alpha1 .Ini },
270- },
271- wantErr : true ,
272- want : map [string ]string {},
273- }}
274- for _ , tt := range tests {
275- t .Run (tt .name , func (t * testing.T ) {
276- got , err := checkAndUpdateReloadYaml (tt .args .data , tt .args .reloadConfig , * tt .args .formatterConfig )
277- if (err != nil ) != tt .wantErr {
278- t .Errorf ("checkAndUpdateReloadYaml() error = %v, wantErr %v" , err , tt .wantErr )
279- return
280- }
281- if ! customEqual (got , tt .want ) {
282- t .Errorf ("checkAndUpdateReloadYaml() got = %v, want %v" , got , tt .want )
283- }
284- })
285- }
286- }
0 commit comments