コード例 #1
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_group_name_multiple_ports(self):
     expected = [
         Rule(protocol="tcp", from_port=22,   to_port=22,   security_group_name="default"),
         Rule(protocol="tcp", from_port=2812, to_port=2812, security_group_name="default"),
         Rule(protocol="tcp", from_port=4001, to_port=4001, security_group_name="default"),
     ]
     assert_sequence_equal(expected, RuleParser.parse("tcp port 22, 2812, 4001 default"))
コード例 #2
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_icmp(self):
     expected = [
         Rule(protocol="icmp", from_port=0,  to_port=0,  security_group_name="default"),
         Rule(protocol="icmp", from_port=3,  to_port=5,  security_group_name="default"),
         Rule(protocol="icmp", from_port=8,  to_port=14, security_group_name="default"),
         Rule(protocol="icmp", from_port=40, to_port=40, security_group_name="default")
     ]
     assert_sequence_equal(expected, RuleParser.parse("icmp port 0, 3-5, 8-14, 40 default"))
コード例 #3
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_invalid_prefix_length(self):
     RuleParser.parse("tcp port 80 1.2.3.4/38")
コード例 #4
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_with_mask(self):
     assert_sequence_equal([self.single_address], RuleParser.parse("tcp port 0-65535 1.2.3.4/32"))
コード例 #5
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_tcp_default_and_port_keyword_optional(self):
     assert_sequence_equal([self.all_tcp], RuleParser.parse("0-65535 default"))
コード例 #6
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_group_id(self):
     expected = Rule(protocol="tcp", from_port=0, to_port=65535, security_group_id="sg-12345")
     assert_sequence_equal([expected], RuleParser.parse("tcp port 0-65535 sg-12345"))
コード例 #7
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_group_name_port_range(self):
     expected = Rule(protocol="tcp", from_port=61620, to_port=61621, security_group_name="cassandra")
     assert_sequence_equal([expected], RuleParser.parse("tcp port 61620-61621 cassandra"))
コード例 #8
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_group_name_starts_with_dot(self):
     RuleParser.parse("tcp port 80 .my_group")
コード例 #9
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_single_port(self):
     assert_sequence_equal([self.http_server], RuleParser.parse("tcp port 80 0.0.0.0/0"))
コード例 #10
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_port_is_case_insensitive(self):
     assert_sequence_equal([self.http_server], RuleParser.parse("tcp PORT 80 0.0.0.0/0"))
コード例 #11
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_protocol_is_case_insensitive(self):
     expected = Rule(protocol="udp", from_port=2003, to_port=2003, address="1.2.3.4/29")
     assert_sequence_equal([expected], RuleParser.parse("UDP port 2003 1.2.3.4/29"))
コード例 #12
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_invalid_mask(self):
     RuleParser.parse("tcp port 80 0.0.0.0/zz")
コード例 #13
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_invalid_cidr(self):
     assert_sequence_equal([], RuleParser.parse("tcp port 80 0.0.0.0//0"))
コード例 #14
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_unparsable_port(self):
     RuleParser.parse("tcp port mail 0.0.0.0/0")
コード例 #15
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_unknown_protocol(self):
     RuleParser.parse("dccp port 9 0.0.0.0/0")
コード例 #16
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_group_name(self):
     assert_sequence_equal([self.all_tcp], RuleParser.parse("tcp port 0-65535 default"))
コード例 #17
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_group_name_includes_dot(self):
     expected = Rule(protocol="tcp", from_port=80, to_port=80, security_group_name="web.group")
     assert_sequence_equal([expected], RuleParser.parse("tcp port 80 web.group"))
コード例 #18
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_single_port_trailing_comma(self):
     RuleParser.parse("tcp port 80, 1.2.3.4")
コード例 #19
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_multiple_ports_ignores_whitespace(self):
     assert_sequence_equal([self.http_server, self.https_server], RuleParser.parse("tcp port 80, 443 0.0.0.0/0"))
コード例 #20
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_port_range(self):
     assert_sequence_equal([self.app_server1], RuleParser.parse("tcp port 8000-8100 0.0.0.0/0"))
コード例 #21
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_group_name_multiple_ports_port_ranges(self):
     assert_sequence_equal(self.cassandra, RuleParser.parse("tcp port 7000-7001,7199, 61620-61621 cassandra"))
コード例 #22
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_port_range_multiple_ports(self):
     expected = [self.http_server, self.https_server, self.app_server1]
     assert_sequence_equal(expected, RuleParser.parse("tcp port 80, 443, 8000-8100 0.0.0.0/0"))
コード例 #23
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_tcp_default(self):
     assert_sequence_equal([self.all_tcp], RuleParser.parse("port 0-65535 default"))
コード例 #24
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_multiple_port_ranges(self):
     assert_sequence_equal([self.app_server1, self.app_server2], RuleParser.parse("tcp port 8000-8100, 9000-9100 0.0.0.0/0"))
コード例 #25
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_tcp_default_and_port_keyword_optional_multiple_ports_and_port_ranges(self):
     assert_sequence_equal(self.cassandra, RuleParser.parse("7000-7001, 7199,61620-61621 cassandra"))
コード例 #26
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_invalid_octet(self):
     RuleParser.parse("tcp port 80 1.2.3.256")
コード例 #27
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_address_mask_defaults_to_32(self):
     assert_sequence_equal([self.single_address], RuleParser.parse("tcp port 0-65535 1.2.3.4"))
コード例 #28
0
ファイル: test_rule_parser.py プロジェクト: richchang0/dalton
 def test_udp(self):
     expected = Rule(protocol="udp", from_port=2003, to_port=2003, address="1.2.3.4/29")
     assert_sequence_equal([expected], RuleParser.parse("udp port 2003 1.2.3.4/29"))