def test_contains(self): layer_narrow = NetworkLayer(source='1.2.3.0/24') layer_wide = NetworkLayer() assert_true(layer_narrow in layer_wide) assert_false(layer_narrow not in layer_wide) assert_true(layer_wide not in layer_narrow)
def test_network_setter(self): self.ace.network = None assert_equals(self.ace.network, NetworkLayer()) source = '1.2.3.0/24' destination = '5.6.0.0/16' nl = NetworkLayer.from_string('{} {}'.format(source, destination)) self.ace.network = NetworkLayer.from_string('{} {}'.format(source, destination)) assert_equals(self.ace.network, nl) assert_equals(self.ace.network.source, source) assert_equals(self.ace.network.destination, destination)
def test_network_setter(self): self.ace.network = None assert_equals(self.ace.network, NetworkLayer()) source = '1.2.3.0/24' destination = '5.6.0.0/16' nl = NetworkLayer.from_string('{} {}'.format(source, destination)) self.ace.network = NetworkLayer.from_string('{} {}'.format( source, destination)) assert_equals(self.ace.network, nl) assert_equals(self.ace.network.source, source) assert_equals(self.ace.network.destination, destination)
def test_repr(self): layer = NetworkLayer() rep = layer.__repr__ rep_txt = "<NetworkLayer 0.0.0.0/0 0.0.0.0/0>" assert_equals(rep(), rep_txt) rep_txt = "<NetworkLayer 10.0.0.0/8 0.0.0.0/0>" layer.source = '10.0.0.0/8' assert_equals(rep(), rep_txt) rep_txt = "<NetworkLayer 10.0.0.0/8 192.168.0.0/16>" layer.destination = '192.168.2.1/16' assert_equals(rep(), rep_txt)
def test_ineqaulity(self): ace = Ace() ace.network = NetworkLayer.from_string('1.2.3.0/24 2.3.4.0/24') ace.transport = TransportLayerBuilder.build('tcp 1024 65535 22 22') ace.logging = LoggingFacility.from_string('warning') assert_not_equals(Ace(), ace) assert_not_equals(Ace(permit=False), Ace()) assert_not_equals(Ace(logging=1), Ace()) ace = Ace() ace.network = NetworkLayer.from_string('1.2.3.0/24 2.3.4.0/24') assert_not_equals(ace, Ace()) ace = Ace() ace.transport = TransportLayerBuilder.build('tcp 1024 65535 22 22') assert_not_equals(ace, Ace())
def test_print_group_network(self): source = NetworkGroup(name='source') destination = NetworkGroup(name='destination') network = NetworkLayer(source=source, destination=destination) ace = Ace(network=network) expected = 'permit ip source destination' assert_equals(ace.print_group(), expected)
def test_not_contains(self): ace = Ace(network=NetworkLayer.from_string('1.2.3.0/24 2.3.4.0/24')) assert_not_in(Ace(), ace) ace = Ace(transport=TransportLayerBuilder.build('tcp 1024 65535 22 22')) assert_not_in(Ace(), ace) ace = Ace(logging='warning') assert_not_in(Ace(), ace)
def test_not_contains(self): ace = Ace(network=NetworkLayer.from_string('1.2.3.0/24 2.3.4.0/24')) assert_not_in(Ace(), ace) ace = Ace( transport=TransportLayerBuilder.build('tcp 1024 65535 22 22')) assert_not_in(Ace(), ace) ace = Ace(logging='warning') assert_not_in(Ace(), ace)
def test_eqaulity(self): aces = list() for index in range(2): ace = Ace() ace.network = NetworkLayer.from_string('1.2.3.0/24 2.3.4.0/24') ace.transport = TransportLayerBuilder.build('tcp 1024 65535 22 22') ace.logging = LoggingFacility.from_string('warning') aces.append(ace) assert_equals(aces[0], aces[1])
def test_initialization(self): assert_equals(NetworkLayer(source='1.2.3.4').source, '1.2.3.4/32') assert_equals(NetworkLayer(source='1.2.3.4/24').source, '1.2.3.0/24') assert_equals( NetworkLayer(destination='1.2.3.4').destination, '1.2.3.4/32') assert_equals( NetworkLayer(destination='1.2.3.4/24').destination, '1.2.3.0/24') layer = NetworkLayer(source='1.2.3.4/24', destination='5.6.7.8/24') assert_equals(layer.source, '1.2.3.0/24') assert_equals(layer.destination, '5.6.7.0/24') layer = NetworkLayer() assert_equals(layer.source, '0.0.0.0/0') assert_equals(layer.destination, '0.0.0.0/0')
def test_group_getter(self): nl = NetworkLayer() new_name = 'new name' nl.source.name = new_name assert_equals(nl.source.name, new_name)
def test_setter(self): layer = NetworkLayer() layer.source = '1.2.3.4/24' assert_equals(layer.source, '1.2.3.0/24') layer.destination = '1.2.3.4/24' assert_equals(layer.destination, '1.2.3.0/24')
def test_setter_invalid(self): for value in self.invalid_values: assert_raises(ValueError, setattr, NetworkLayer(), 'source', value) assert_raises(ValueError, setattr, NetworkLayer(), 'destination', value)
def test_inequality(self): layer_a = NetworkLayer(source='1.2.3.4') layer_b = NetworkLayer(source='1.2.3.5') assert_not_equals(layer_a, layer_b)
def test_initialization_default(self): assert_equals(self.ace.network, NetworkLayer()) assert_equals(self.ace.transport, None) assert_equals(self.ace.logging, LoggingFacility())
def setup(self): self.ace = Ace() self.network_layer = NetworkLayer() self.transport_layer = TransportLayer()
def test_equality_invalid(self): layer = NetworkLayer() for value in self.invalid_values: assert_raises(TypeError, layer.__eq__, value)
def test_contains_invalid(self): layer = NetworkLayer() for value in self.invalid_values: assert_raises(TypeError, layer.__contains__, value)