def test_basic_config(self): """Tests the minimal config""" port_number = 1 port_key = 1 input_config = {} output_config = {'description': str(port_key), 'number': port_number} expected_config = self.default_config expected_config.update(input_config) expected_config.update(output_config) port = Port(port_key, 1, input_config) output_config = port.to_conf() self.assertEqual(output_config, expected_config) key_exceptions = ['name', '_id', 'dp_id', 'dyn_phys_up'] dict_keys = set(port.__dict__.keys()) conf_keys = set(port.to_conf().keys()) for exception in key_exceptions: dict_keys.remove(exception) self.assertEqual(dict_keys, conf_keys)
def test_config_with_vlans(self): """Tests the config with tagged and native vlans""" vlan100 = MockVLAN('v100') vlan200 = MockVLAN('v200') vlan300 = MockVLAN('v300') tagged_vlans = [vlan200, vlan300] native_vlan = vlan100 port_number = 1 port_key = 'port_1' input_config = {'number': port_number} output_config = { 'description': str(port_key), 'number': port_number, 'native_vlan': vlan100.name, 'tagged_vlans': [vlan200.name, vlan300.name] } expected_config = self.default_config expected_config.update(input_config) expected_config.update(output_config) port = Port(port_key, 1, input_config) port.native_vlan = native_vlan port.tagged_vlans = tagged_vlans output_config = port.to_conf() self.assertEqual(output_config, expected_config)
def test_config_with_port_number(self): """Tests the minimal config""" port_number = 1 port_key = 'port_1' input_config = {'number': port_number} output_config = {'description': str(port_key), 'number': port_number} expected_config = self.default_config expected_config.update(input_config) expected_config.update(output_config) port = Port(port_key, 1, input_config) output_config = port.to_conf() self.assertEqual(output_config, expected_config)