@@ -347,19 +347,48 @@ func BenchmarkReporter(b *testing.B) {
347
347
348
348
func TestTagger (t * testing.T ) {
349
349
rpt := report .MakeReport ()
350
+ rpt .ContainerImage .AddNode (report .MakeNodeWith ("image1" , map [string ]string {
351
+ docker .ImageName : "weaveworks/some_interesting_image" ,
352
+ }))
353
+ rpt .ContainerImage .AddNode (report .MakeNodeWith ("pause_image" , map [string ]string {
354
+ docker .ImageName : "google_containers/pause" ,
355
+ }))
350
356
rpt .Container .AddNode (report .MakeNodeWith ("container1" , map [string ]string {
351
357
docker .LabelPrefix + "io.kubernetes.pod.uid" : "123456" ,
358
+ }).WithParent (report .ContainerImage , "image1" ))
359
+ // This is the first way that Scope identified a pause container - via image name
360
+ rpt .Container .AddNode (report .MakeNodeWith ("container2" , map [string ]string {
361
+ docker .LabelPrefix + "io.kubernetes.pod.uid" : "123456" ,
362
+ }).WithParent (report .ContainerImage , "pause_image" ))
363
+ // Second way that Scope identifies a pause container - via docker.type label
364
+ rpt .Container .AddNode (report .MakeNodeWith ("container3" , map [string ]string {
365
+ docker .LabelPrefix + "io.kubernetes.pod.uid" : "123456" ,
366
+ docker .LabelPrefix + "io.kubernetes.docker.type" : "podsandbox" ,
352
367
}))
353
368
354
369
rpt , err := (& kubernetes.Tagger {}).Tag (rpt )
355
370
if err != nil {
356
371
t .Errorf ("Unexpected error: %v" , err )
357
372
}
358
373
359
- have , ok := rpt .Container .Nodes ["container1" ].Parents .Lookup (report .Pod )
374
+ podParents , ok := rpt .Container .Nodes ["container1" ].Parents .Lookup (report .Pod )
360
375
want := report .MakeStringSet (report .MakePodNodeID ("123456" ))
361
- if ! ok || ! reflect .DeepEqual (have , want ) {
362
- t .Errorf ("Expected container to have pod parent %v %v" , have , want )
376
+ if ! ok || ! reflect .DeepEqual (podParents , want ) {
377
+ t .Errorf ("Expected container1 to have pod parent %v %v" , podParents , want )
378
+ }
379
+ _ , ok = rpt .Container .Nodes ["container1" ].Latest .Lookup (report .DoesNotMakeConnections )
380
+ if ok {
381
+ t .Errorf ("Expected container1 not to have DoesNotMakeConnections flag" )
382
+ }
383
+
384
+ _ , ok = rpt .Container .Nodes ["container2" ].Latest .Lookup (report .DoesNotMakeConnections )
385
+ if ! ok {
386
+ t .Errorf ("Expected pause container to have DoesNotMakeConnections flag" )
387
+ }
388
+
389
+ _ , ok = rpt .Container .Nodes ["container3" ].Latest .Lookup (report .DoesNotMakeConnections )
390
+ if ! ok {
391
+ t .Errorf ("Expected pause container to have DoesNotMakeConnections flag" )
363
392
}
364
393
}
365
394
0 commit comments