@@ -39,7 +39,6 @@ def setup_teardown_neighbor(self, dvs):
3939
4040 def test_L3V4V6AclTableCreationDeletion (self , dvs_acl ):
4141 try :
42- # Create an L3V4V6 ACL table with default ACL actions
4342 dvs_acl .create_acl_table (L3V4V6_TABLE_NAME , L3V4V6_TABLE_TYPE , L3V4V6_BIND_PORTS )
4443
4544 acl_table_id = dvs_acl .get_acl_table_ids (1 )[0 ]
@@ -55,6 +54,44 @@ def test_L3V4V6AclTableCreationDeletion(self, dvs_acl):
5554 # Verify the STATE_DB entry is removed
5655 dvs_acl .verify_acl_table_status (L3V4V6_TABLE_NAME , None )
5756
57+ def test_ValidAclRuleCreation_sip_dip (self , dvs_acl , l3v4v6_acl_table ):
58+ config_qualifiers = {"DST_IP" : "20.0.0.1/32" ,
59+ "SRC_IP" : "10.0.0.0/32" };
60+
61+ dvs_acl .create_acl_rule (L3V4V6_TABLE_NAME , "VALID_RULE" , config_qualifiers )
62+ # Verify status is written into STATE_DB
63+ dvs_acl .verify_acl_rule_status (L3V4V6_TABLE_NAME , "VALID_RULE" , "Active" )
64+
65+ dvs_acl .remove_acl_rule (L3V4V6_TABLE_NAME , "VALID_RULE" )
66+ # Verify the STATE_DB entry is removed
67+ dvs_acl .verify_acl_rule_status (L3V4V6_TABLE_NAME , "VALID_RULE" , None )
68+ dvs_acl .verify_no_acl_rules ()
69+
70+ def test_InvalidAclRuleCreation_sip_sipv6 (self , dvs_acl , l3v4v6_acl_table ):
71+ config_qualifiers = {"SRC_IPV6" : "2777::0/64" ,
72+ "SRC_IP" : "10.0.0.0/32" };
73+
74+ dvs_acl .create_acl_rule (L3V4V6_TABLE_NAME , "INVALID_RULE" , config_qualifiers )
75+ # Verify status is written into STATE_DB
76+ dvs_acl .verify_acl_rule_status (L3V4V6_TABLE_NAME , "INVALID_RULE" , "Inactive" )
77+
78+ dvs_acl .remove_acl_rule (L3V4V6_TABLE_NAME , "INVALID_RULE" )
79+ # Verify the STATE_DB entry is removed
80+ dvs_acl .verify_acl_rule_status (L3V4V6_TABLE_NAME , "INVALID_RULE" , None )
81+ dvs_acl .verify_no_acl_rules ()
82+
83+ def test_InvalidAclRuleCreation_dip_sipv6 (self , dvs_acl , l3v4v6_acl_table ):
84+ config_qualifiers = {"SRC_IPV6" : "2777::0/64" ,
85+ "DST_IP" : "10.0.0.0/32" };
86+
87+ dvs_acl .create_acl_rule (L3V4V6_TABLE_NAME , "INVALID_RULE" , config_qualifiers )
88+ # Verify status is written into STATE_DB
89+ dvs_acl .verify_acl_rule_status (L3V4V6_TABLE_NAME , "INVALID_RULE" , "Inactive" )
90+
91+ dvs_acl .remove_acl_rule (L3V4V6_TABLE_NAME , "INVALID_RULE" )
92+ # Verify the STATE_DB entry is removed
93+ dvs_acl .verify_acl_rule_status (L3V4V6_TABLE_NAME , "INVALID_RULE" , None )
94+ dvs_acl .verify_no_acl_rules ()
5895
5996# Add Dummy always-pass test at end as workaroud
6097# for issue when Flaky fail on final test it invokes module tear-down before retrying
0 commit comments