Beispiel #1
0
    def test_filter_rule(self):
        fr = models.FilterRule(action='pass',
                               family='inet',
                               destination='192.168.1.1/32')

        self.assertEqual(fr.action, 'pass')
        self.assertEqual(fr.family, 'inet')
        self.assertEqual(fr.destination, netaddr.IPNetwork('192.168.1.1/32'))
Beispiel #2
0
 def test_setattr_protocol_invalid(self):
     with self.assertRaises(ValueError):
         models.FilterRule(action='pass', protocol='made_up_proto')
Beispiel #3
0
 def test_setattr_protocol_valid(self):
     for p in ['tcp', 'udp', 'imcp']:
         fr = models.FilterRule(action='pass', protocol=p)
         self.assertEqual(fr.protocol, p)
Beispiel #4
0
 def test_setattr_port_none(self):
     fr = models.FilterRule(action='pass', destination_port=None)
     self.assertIs(fr.destination_port, None)
Beispiel #5
0
    def test_setattr_port(self):
        fr = models.FilterRule(action='pass', source_port='22')
        self.assertEqual(fr.source_port, 22)

        fr = models.FilterRule(action='pass', destination_port='23')
        self.assertEqual(fr.destination_port, 23)
Beispiel #6
0
 def test_setattr_redirect(self):
     fr = models.FilterRule(action='pass', redirect='192.168.1.1')
     self.assertEqual(fr.redirect, netaddr.IPAddress('192.168.1.1'))
Beispiel #7
0
    def test_setattr_source_destination_label(self):
        fr = models.FilterRule(action='pass', destination='foo')
        self.assertEqual(fr.destination, 'foo')

        fr = models.FilterRule(action='pass', source='bar')
        self.assertEqual(fr.source, 'bar')
Beispiel #8
0
    def test_setattr_source_destination_cidr(self):
        fr = models.FilterRule(action='pass', destination='192.168.1.2/32')
        self.assertEqual(fr.destination, netaddr.IPNetwork('192.168.1.2/32'))

        fr = models.FilterRule(action='pass', source='192.168.1.2/32')
        self.assertEqual(fr.source, netaddr.IPNetwork('192.168.1.2/32'))
Beispiel #9
0
 def test_setattr_invalid_family(self):
     with self.assertRaises(ValueError):
         models.FilterRule(action='pass', family='raw')
Beispiel #10
0
 def test_setattr_action_invalid(self):
     with self.assertRaises(ValueError):
         models.FilterRule(action='reject')
Beispiel #11
0
 def test_setattr_action_valid(self):
     fr = models.FilterRule(action='block')
     self.assertEqual(fr.action, 'block')