@@ -323,6 +323,65 @@ func Test_tov1beta1AndBack(t *testing.T) {
323
323
assert .Equal (t , colalpha1 , colalpha1Converted )
324
324
}
325
325
326
+ func Test_tov1beta1AndBack_prometheus_selectors (t * testing.T ) {
327
+ t .Run ("nil-selectors" , func (t * testing.T ) {
328
+ colalpha1 := OpenTelemetryCollector {
329
+ Spec : OpenTelemetryCollectorSpec {
330
+ TargetAllocator : OpenTelemetryTargetAllocator {
331
+ PrometheusCR : OpenTelemetryTargetAllocatorPrometheusCR {
332
+ // nil or empty map means select everything
333
+ PodMonitorSelector : nil ,
334
+ ServiceMonitorSelector : nil ,
335
+ },
336
+ },
337
+ },
338
+ }
339
+
340
+ colbeta1 := v1beta1.OpenTelemetryCollector {}
341
+ err := colalpha1 .ConvertTo (& colbeta1 )
342
+ require .NoError (t , err )
343
+
344
+ // nil LabelSelector means select nothing
345
+ // empty LabelSelector mean select everything
346
+ assert .NotNil (t , colbeta1 .Spec .TargetAllocator .PrometheusCR .PodMonitorSelector )
347
+ assert .NotNil (t , colbeta1 .Spec .TargetAllocator .PrometheusCR .ServiceMonitorSelector )
348
+ assert .Equal (t , 0 , len (colalpha1 .Spec .TargetAllocator .PrometheusCR .PodMonitorSelector ))
349
+ assert .Equal (t , 0 , len (colalpha1 .Spec .TargetAllocator .PrometheusCR .ServiceMonitorSelector ))
350
+
351
+ err = colalpha1 .ConvertFrom (& colbeta1 )
352
+ require .NoError (t , err )
353
+ assert .Nil (t , colalpha1 .Spec .TargetAllocator .PrometheusCR .PodMonitorSelector )
354
+ assert .Nil (t , colalpha1 .Spec .TargetAllocator .PrometheusCR .ServiceMonitorSelector )
355
+ })
356
+ t .Run ("empty-selectors" , func (t * testing.T ) {
357
+ colalpha1 := OpenTelemetryCollector {
358
+ Spec : OpenTelemetryCollectorSpec {
359
+ TargetAllocator : OpenTelemetryTargetAllocator {
360
+ PrometheusCR : OpenTelemetryTargetAllocatorPrometheusCR {
361
+ // nil or empty map means select everything
362
+ PodMonitorSelector : map [string ]string {},
363
+ ServiceMonitorSelector : map [string ]string {},
364
+ },
365
+ },
366
+ },
367
+ }
368
+
369
+ colbeta1 := v1beta1.OpenTelemetryCollector {}
370
+ err := colalpha1 .ConvertTo (& colbeta1 )
371
+ require .NoError (t , err )
372
+
373
+ // nil LabelSelector means select nothing
374
+ // empty LabelSelector mean select everything
375
+ assert .NotNil (t , colbeta1 .Spec .TargetAllocator .PrometheusCR .PodMonitorSelector )
376
+ assert .NotNil (t , colbeta1 .Spec .TargetAllocator .PrometheusCR .ServiceMonitorSelector )
377
+
378
+ err = colalpha1 .ConvertFrom (& colbeta1 )
379
+ require .NoError (t , err )
380
+ assert .Equal (t , map [string ]string {}, colalpha1 .Spec .TargetAllocator .PrometheusCR .PodMonitorSelector )
381
+ assert .Equal (t , map [string ]string {}, colalpha1 .Spec .TargetAllocator .PrometheusCR .ServiceMonitorSelector )
382
+ })
383
+ }
384
+
326
385
func createTA () OpenTelemetryTargetAllocator {
327
386
replicas := int32 (2 )
328
387
runAsNonRoot := true
0 commit comments