def test_snmpget_by_cl(self, mock_exec_command): oid = "sysDescr.0" # Incorrect credentials incorr_credentials = {"version": "1v", "community": "public"} self.assertIsNone(utils.snmpget_by_cl(self.host, incorr_credentials, oid)) # Switch timeout, failed to execute SNMPGET mock_exec_command.return_value = (1, None, "Timeout") with self.assertRaises(TimeoutError): utils.snmpget_by_cl(self.host, self.credentials, oid) # Successfully get system information mock_exec_command.return_value = (0, "Huawei Technologies", None) result = utils.snmpget_by_cl(self.host, self.credentials, oid) self.assertEqual("Huawei Technologies", result)
def test_snmpget_by_cl(self, mock_exec_command): oid = "sysDescr.0" # Incorrect credentials incorr_credentials = {"version": "1v", "community": "public"} self.assertIsNone( utils.snmpget_by_cl(self.host, incorr_credentials, oid)) # Switch timeout, failed to execute SNMPGET mock_exec_command.return_value = (1, None, "Timeout") with self.assertRaises(TimeoutError): utils.snmpget_by_cl(self.host, self.credentials, oid) # Successfully get system information mock_exec_command.return_value = (0, "Huawei Technologies", None) result = utils.snmpget_by_cl(self.host, self.credentials, oid) self.assertEqual("Huawei Technologies", result)
def get_sys_info(self, host, credential): sys_info = None try: sys_info = utils.snmpget_by_cl(host, credential, self.snmp_sysdescr) except TimeoutError as e: return (None, e.message) return (sys_info, "")
def get_sys_info(self, host, credential): """get sys info.""" sys_info = None try: sys_info = utils.snmpget_by_cl(host, credential, self.snmp_sysdescr) except TimeoutError as error: return (None, error.message) return (sys_info, "")
def get_port(self, if_index): """Get port number.""" if_name = '.'.join((self.port_oid, if_index)) result = None try: result = utils.snmpget_by_cl(self.host, self.credential, if_name) except TimeoutError as error: logging.debug("[PluginMac:get_port snmpget_by_cl failed: %s]", error.message) return None # A result may be like "Value: FasterEthernet1/2/34 port = result.split()[-1].split('/')[-1] return port
def get_vlan_id(self, port): """Get vlan Id.""" if not port: return None oid = '.'.join((self.vlan_oid, port)) vlan_id = None result = None try: result = utils.snmpget_by_cl(self.host, self.credential, oid) except TimeoutError as error: logging.debug("[PluginMac:get_vlan_id snmpget_by_cl failed: %s]", error.message) return None vlan_id = result.split()[-1] return vlan_id