@@ -554,46 +554,54 @@ def create_and_test_acl(self, appdb, dvs_acl):
554
554
555
555
dvs_acl .verify_no_acl_rules ()
556
556
557
- # Set one mux port to standby, verify ACL rule with inport bitmap (1 port)
557
+ # Set mux port in active-active cable type, no ACL rules programmed
558
558
self .set_mux_state (appdb , "Ethernet0" , "standby" )
559
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet0" ], dvs_acl )
559
+ dvs_acl .verify_no_acl_rules ()
560
+
561
+ # Set one mux port to standby, verify ACL rule with inport bitmap (1 port)
562
+ self .set_mux_state (appdb , "Ethernet4" , "standby" )
563
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4" ], dvs_acl )
560
564
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
561
565
562
566
# Set two mux ports to standby, verify ACL rule with inport bitmap (2 ports)
563
- self .set_mux_state (appdb , "Ethernet4 " , "standby" )
564
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet0 " , "Ethernet4 " ], dvs_acl )
567
+ self .set_mux_state (appdb , "Ethernet8 " , "standby" )
568
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4 " , "Ethernet8 " ], dvs_acl )
565
569
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
566
570
567
- # Set one mux port to active, verify ACL rule with inport bitmap (1 port)
568
571
self .set_mux_state (appdb , "Ethernet0" , "active" )
569
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4" ], dvs_acl )
572
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4" , "Ethernet8" ], dvs_acl )
570
573
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
571
574
572
- # Set last mux port to active, verify ACL rule is deleted
575
+ # Set one mux port to active, verify ACL rule with inport bitmap (1 port)
573
576
self .set_mux_state (appdb , "Ethernet4" , "active" )
577
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet8" ], dvs_acl )
578
+ dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
579
+
580
+ # Set last mux port to active, verify ACL rule is deleted
581
+ self .set_mux_state (appdb , "Ethernet8" , "active" )
574
582
dvs_acl .verify_no_acl_rules ()
575
583
576
584
# Set unknown state and verify the behavior as standby
577
- self .set_mux_state (appdb , "Ethernet0 " , "unknown" )
578
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet0 " ], dvs_acl )
585
+ self .set_mux_state (appdb , "Ethernet4 " , "unknown" )
586
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4 " ], dvs_acl )
579
587
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
580
588
581
589
# Verify change while setting unknown from active
582
- self .set_mux_state (appdb , "Ethernet4 " , "unknown" )
583
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet0 " , "Ethernet4 " ], dvs_acl )
590
+ self .set_mux_state (appdb , "Ethernet8 " , "unknown" )
591
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4 " , "Ethernet8 " ], dvs_acl )
584
592
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
585
593
586
- self .set_mux_state (appdb , "Ethernet0 " , "active" )
587
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4 " ], dvs_acl )
594
+ self .set_mux_state (appdb , "Ethernet4 " , "active" )
595
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet8 " ], dvs_acl )
588
596
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
589
597
590
- self .set_mux_state (appdb , "Ethernet0 " , "standby" )
591
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet0 " , "Ethernet4 " ], dvs_acl )
598
+ self .set_mux_state (appdb , "Ethernet4 " , "standby" )
599
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4 " , "Ethernet8 " ], dvs_acl )
592
600
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
593
601
594
602
# Verify no change while setting unknown from standby
595
- self .set_mux_state (appdb , "Ethernet0 " , "unknown" )
596
- sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet0 " , "Ethernet4 " ], dvs_acl )
603
+ self .set_mux_state (appdb , "Ethernet4 " , "unknown" )
604
+ sai_qualifier = self .get_expected_sai_qualifiers (["Ethernet4 " , "Ethernet8 " ], dvs_acl )
597
605
dvs_acl .verify_acl_rule (sai_qualifier , action = "DROP" , priority = self .ACL_PRIORITY )
598
606
599
607
def create_and_test_metrics (self , appdb , statedb ):
@@ -1096,7 +1104,13 @@ def test_acl(self, dvs, dvs_acl, testlog):
1096
1104
1097
1105
appdb = swsscommon .DBConnector (swsscommon .APPL_DB , dvs .redis_sock , 0 )
1098
1106
1099
- self .create_and_test_acl (appdb , dvs_acl )
1107
+ try :
1108
+ self .create_and_test_acl (appdb , dvs_acl )
1109
+ finally :
1110
+ self .set_mux_state (appdb , "Ethernet0" , "active" )
1111
+ self .set_mux_state (appdb , "Ethernet4" , "active" )
1112
+ self .set_mux_state (appdb , "Ethernet8" , "active" )
1113
+ dvs_acl .verify_no_acl_rules ()
1100
1114
1101
1115
def test_mux_metrics (self , dvs , testlog ):
1102
1116
""" test metrics for mux state change """
0 commit comments