class_docstr: Tests for alert_processor/main.py
class_docstr_tok: ["Tests","for","alert_processor\/main.py"]
docstr: Alert Processor - Run With an Invalid Alert
docstr_tok: ["Alert","Processor","-","Run","With","an","Invalid","Alert"]
code: def test_run_invalid_alert(self, mock_logger):
      """Alert Processor - Run With an Invalid Alert"""
      result = self.processor.run({"Record": "Nonsense"})
      assert_equal({}, result)
      mock_logger.exception.called_once_with(
          "Invalid alert %s", {"Record": "Nonsense"}
      )
  
imports: import os
  from mock import ANY, MagicMock, Mock, patch
  from nose.tools import assert_equal, assert_is_instance, assert_is_none
  from streamalert.alert_processor.main import AlertProcessor, handler
  from streamalert.alert_processor.outputs.output_base import OutputDispatcher
  from streamalert.shared.alert import Alert
  from streamalert.shared.config import load_config
  from streamalert.shared.normalize import Normalizer
  from tests.unit.streamalert.alert_processor import ALERTS_TABLE, MOCK_ENV
label_desc: Use image node_id 13 for calling the TestAlertProcessor obj's underlying member method code with example usage: obj.test_run_invalid_alert(mock_logger) without return types