@@ -355,6 +355,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
355
355
356
356
// Assigning that IP to a node should now make it work
357
357
eip .updateNodeEgress ("172.17.0.4" , []string {"172.17.0.101" })
358
+ err = assertNetlinkChange (eip , "claim 172.17.0.101" )
359
+ if err != nil {
360
+ t .Fatalf ("%v" , err )
361
+ }
358
362
err = assertOVSChanges (eip , & flows ,
359
363
egressOVSChange {vnid : 42 , egress : Local },
360
364
)
@@ -364,6 +368,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
364
368
365
369
// Swapping the order in the NetNamespace should bring the original Egress IP back
366
370
eip .updateNamespaceEgress (42 , []string {"172.17.0.100" , "172.17.0.101" })
371
+ err = assertNetlinkChange (eip , "release 172.17.0.101" )
372
+ if err != nil {
373
+ t .Fatalf ("%v" , err )
374
+ }
367
375
err = assertOVSChanges (eip , & flows ,
368
376
egressOVSChange {vnid : 42 , egress : Remote , remote : "172.17.0.3" },
369
377
)
@@ -373,6 +381,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
373
381
374
382
// Removing the inactive egress IP from its node should have no effect
375
383
eip .updateNodeEgress ("172.17.0.4" , []string {"172.17.0.200" })
384
+ err = assertNoNetlinkChanges (eip )
385
+ if err != nil {
386
+ t .Fatalf ("%v" , err )
387
+ }
376
388
err = assertOVSChanges (eip , & flows ,
377
389
egressOVSChange {vnid : 42 , egress : Remote , remote : "172.17.0.3" },
378
390
)
@@ -392,6 +404,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
392
404
// Now add the egress IPs back...
393
405
eip .updateNodeEgress ("172.17.0.3" , []string {"172.17.0.100" })
394
406
eip .updateNodeEgress ("172.17.0.4" , []string {"172.17.0.101" })
407
+ err = assertNoNetlinkChanges (eip )
408
+ if err != nil {
409
+ t .Fatalf ("%v" , err )
410
+ }
395
411
err = assertOVSChanges (eip , & flows ,
396
412
egressOVSChange {vnid : 42 , egress : Remote , remote : "172.17.0.3" },
397
413
)
@@ -402,6 +418,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
402
418
// Assigning either the used or the unused Egress IP to another namespace should
403
419
// break this namespace
404
420
eip .updateNamespaceEgress (43 , []string {"172.17.0.100" })
421
+ err = assertNoNetlinkChanges (eip )
422
+ if err != nil {
423
+ t .Fatalf ("%v" , err )
424
+ }
405
425
err = assertOVSChanges (eip , & flows ,
406
426
egressOVSChange {vnid : 42 , egress : Dropped },
407
427
egressOVSChange {vnid : 43 , egress : Dropped },
@@ -411,6 +431,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
411
431
}
412
432
413
433
eip .deleteNamespaceEgress (43 )
434
+ err = assertNoNetlinkChanges (eip )
435
+ if err != nil {
436
+ t .Fatalf ("%v" , err )
437
+ }
414
438
err = assertOVSChanges (eip , & flows ,
415
439
egressOVSChange {vnid : 42 , egress : Remote , remote : "172.17.0.3" },
416
440
egressOVSChange {vnid : 43 , egress : Normal },
@@ -420,6 +444,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
420
444
}
421
445
422
446
eip .updateNamespaceEgress (44 , []string {"172.17.0.101" })
447
+ err = assertNoNetlinkChanges (eip )
448
+ if err != nil {
449
+ t .Fatalf ("%v" , err )
450
+ }
423
451
err = assertOVSChanges (eip , & flows ,
424
452
egressOVSChange {vnid : 42 , egress : Dropped },
425
453
egressOVSChange {vnid : 44 , egress : Dropped },
@@ -429,6 +457,10 @@ func TestMultipleNamespaceEgressIPs(t *testing.T) {
429
457
}
430
458
431
459
eip .deleteNamespaceEgress (44 )
460
+ err = assertNoNetlinkChanges (eip )
461
+ if err != nil {
462
+ t .Fatalf ("%v" , err )
463
+ }
432
464
err = assertOVSChanges (eip , & flows ,
433
465
egressOVSChange {vnid : 42 , egress : Remote , remote : "172.17.0.3" },
434
466
egressOVSChange {vnid : 44 , egress : Normal },
0 commit comments