コード例 #1
0
 def test_parse_table_with_vlan_expansion(self):
     table_info = parse_acl_table_info("TEST", "L3", None, "Vlan1000",
                                       "egress")
     assert table_info["type"] == "L3"
     assert table_info["policy_desc"] == "TEST"
     assert table_info["stage"] == "egress"
     assert set(table_info["ports"]) == {
         "Ethernet4", "Ethernet8", "Ethernet12", "Ethernet16"
     }
コード例 #2
0
    def test_parse_table_with_vlan_and_duplicates(self):
        table_info = parse_acl_table_info("TEST", "L3", None,
                                          "Ethernet4,Vlan1000", "egress")
        assert table_info["type"] == "L3"
        assert table_info["policy_desc"] == "TEST"
        assert table_info["stage"] == "egress"

        # Since Ethernet4 is a member of Vlan1000 we should not include it twice in the output
        port_set = set(table_info["ports"])
        assert len(port_set) == 4
        assert set(port_set) == {
            "Ethernet4", "Ethernet8", "Ethernet12", "Ethernet16"
        }
コード例 #3
0
 def test_parse_table_with_empty_ports(self):
     with pytest.raises(ValueError):
         parse_acl_table_info("TEST", "L3", None, "", "egress")
コード例 #4
0
 def test_parse_table_with_invalid_ports(self):
     with pytest.raises(ValueError):
         parse_acl_table_info("TEST", "L3", None, "Ethernet200", "egress")
コード例 #5
0
 def test_parse_table_with_empty_vlan(self):
     with pytest.raises(ValueError):
         parse_acl_table_info("TEST", "L3", None, "Ethernet4,Vlan3000",
                              "egress")