def test_is_rdma_enabled_true(self, mock_iface_rdma, mock_service_enabled): mock_iface_rdma.return_value = True mock_service_enabled.return_value = True self.assertTrue(netinfo.is_rdma_enabled('iface1')) mock_iface_rdma.assert_called_once_with('iface1') mock_service_enabled.assert_called_once_with()
def test_is_rdma_enabled_wrong_mod(self, mock_iface_rdma, mock_service_enabled): mock_iface_rdma.return_value = False mock_service_enabled.return_value = True self.assertFalse(netinfo.is_rdma_enabled('iface1')) mock_iface_rdma.assert_called_once_with('iface1') mock_service_enabled.assert_not_called()
def test_is_rdma_enabled_no_service(self, mock_iface_rdma, mock_service_enabled): mock_iface_rdma.return_value = True mock_service_enabled.return_value = False self.assertFalse(netinfo.is_rdma_enabled('iface1')) mock_iface_rdma.assert_called_once_with('iface1') mock_service_enabled.assert_called_once_with()
def lookup(self, name): """ Populate info using runtime information from /sys/class/net files for active interfaces and for inactive bond and vlan interfaces from cfg files :param name: :return: """ try: # encode name to ensure comparison are in same type. if encode_value(name) in ethtool.get_devices(): info = netinfo.get_interface_info(name) elif cfgInterfacesHelper.is_cfgfileexist(name): type = cfgInterfacesHelper.get_type(name).lower() if type not in IFACE_BOND + [IFACE_VLAN]: raise ValueError device = cfgInterfacesHelper.get_device(name) info = { 'device': device, 'type': cfgInterfacesHelper.get_type(name), 'status': "down", 'ipaddr': "", 'netmask': "", 'macaddr': "", 'module': netinfo.get_interface_kernel_module(name) } if info.get('type') is not 'nic': info['nic_type'] = 'N/A' else: info['nic_type'] = netinfo.get_nic_type(device) else: raise ValueError('unknown interface: %s' % name) info['rdma_enabled'] = netinfo.is_rdma_enabled(name) return info except ValueError: raise NotFoundError("GINNET0014E", {'name': name})
def lookup(self, name): """ Populate info using runtime information from /sys/class/net files for active interfaces and for inactive bond and vlan interfaces from cfg files :param name: :return: """ try: # encode name to ensure comparison are in same type. if encode_value(name) in ethtool.get_devices(): info = netinfo.get_interface_info(name) elif cfgInterfacesHelper.is_cfgfileexist(name): type = cfgInterfacesHelper.get_type(name).lower() if type not in IFACE_BOND + [IFACE_VLAN]: raise ValueError device = cfgInterfacesHelper.get_device(name) info = {'device': device, 'type': cfgInterfacesHelper.get_type(name), 'status': "down", 'ipaddr': "", 'netmask': "", 'macaddr': "", 'module': netinfo.get_interface_kernel_module(name)} if info.get('type') is not 'nic': info['nic_type'] = 'N/A' else: info['nic_type'] = netinfo.get_nic_type(device) else: raise ValueError('unknown interface: %s' % name) info['rdma_enabled'] = netinfo.is_rdma_enabled(name) return info except ValueError: raise NotFoundError("GINNET0014E", {'name': name})