Esempio n. 1
0
    def test_validate(self, mock_validate_connectivity):
        validator = snmp_validator.SNMPValidator()

        mock_validate_connectivity.return_value = fakes.fake_v3_alert_source()
        v3_alert_source_without_engine_id = fakes.fake_v3_alert_source()
        v3_alert_source_without_engine_id.pop('engine_id')
        validator.validate(context, v3_alert_source_without_engine_id)
        self.assertEqual(db.alert_source_update.call_count, 1)

        mock_validate_connectivity.return_value = fakes.fake_v3_alert_source()
        validator.validate(context, fakes.fake_v3_alert_source())
        self.assertEqual(db.alert_source_update.call_count, 1)
Esempio n. 2
0
 def test_validate_connectivity(self, mock_close_dispatcher,
                                mock_register_observer):
     # Get a random host
     a = random.randint(0, 255)
     b = random.randint(0, 255)
     c = random.randint(0, 255)
     d = random.randint(0, 255)
     host = str(a) + '.' + str(b) + '.' + str(c) + '.' + str(d)
     # Get a random port
     port = random.randint(1024, 65535)
     # snmpv3
     v3_alert_source = fakes.fake_v3_alert_source()
     v3_alert_source['host'] = host
     v3_alert_source['port'] = port
     snmp_validator.SNMPValidator.validate_connectivity(
         v3_alert_source)
     self.assertEqual(mock_close_dispatcher.call_count, 1)
     self.assertEqual(mock_register_observer.call_count, 1)
     # snmpv2c
     v2_alert_source = fakes.fake_v2_alert_source()
     v2_alert_source['host'] = host
     v2_alert_source['port'] = port
     snmp_validator.SNMPValidator.validate_connectivity(
         v2_alert_source)
     self.assertEqual(mock_close_dispatcher.call_count, 2)
     self.assertEqual(mock_register_observer.call_count, 1)
 def test_validate_connectivity(self, mock_close_dispatcher,
                                mock_register_observer,
                                mock_access_info_get):
     # Get a random host
     a = random.randint(0, 255)
     b = random.randint(0, 255)
     c = random.randint(0, 255)
     d = random.randint(0, 255)
     host = str(a) + '.' + str(b) + '.' + str(c) + '.' + str(d)
     # Get a random port
     port = random.randint(1024, 65535)
     # snmpv3
     v3_alert_source = fakes.fake_v3_alert_source()
     v3_alert_source['host'] = host
     v3_alert_source['port'] = port
     mock_access_info_get.return_value = {'model': 'vsp'}
     snmp_validator.SNMPValidator.validate_connectivity(
         context.RequestContext(), v3_alert_source)
     self.assertEqual(mock_close_dispatcher.call_count, 1)
     self.assertEqual(mock_register_observer.call_count, 1)
     # snmpv2c
     v2_alert_source = fakes.fake_v2_alert_source()
     v2_alert_source['host'] = host
     v2_alert_source['port'] = port
     snmp_validator.SNMPValidator.validate_connectivity(
         context.RequestContext(), v2_alert_source)
     self.assertEqual(mock_close_dispatcher.call_count, 2)
     self.assertEqual(mock_register_observer.call_count, 1)
 def test_sync_snmp_config_del_exception(self, mock_log_warning):
     ctxt = {}
     alert_config = fakes.fake_v3_alert_source()
     trap_receiver_inst = self._get_trap_receiver()
     trap_receiver_inst.snmp_engine = engine.SnmpEngine()
     trap_receiver_inst.sync_snmp_config(ctxt,
                                         snmp_config_to_del=alert_config)
     self.assertTrue(mock_log_warning.called)
Esempio n. 5
0
    def test_sync_snmp_config_add_v3_version(self, mock_add_config):
        ctxt = {}
        alert_config = fakes.fake_v3_alert_source()
        trap_receiver_inst = self._get_trap_receiver()
        trap_receiver_inst.snmp_engine = engine.SnmpEngine()
        trap_receiver_inst.sync_snmp_config(ctxt,
                                            snmp_config_to_add=alert_config)

        # Verify that addV3User to add config to engine
        self.assertTrue(mock_add_config.called)
 def test_sync_snmp_config_invalid_priv_protocol(self):
     ctxt = {}
     alert_source_config = fakes.fake_v3_alert_source()
     alert_source_config['privacy_protocol'] = 'invalid_priv'
     trap_receiver_inst = self._get_trap_receiver()
     trap_receiver_inst.snmp_engine = engine.SnmpEngine()
     self.assertRaisesRegex(exception.InvalidSNMPConfig, "Invalid "
                                                         "privacy_protocol",
                            trap_receiver_inst.sync_snmp_config, ctxt,
                            snmp_config_to_add=alert_source_config)