class_docstr: Test class for SlackOutput
class_docstr_tok: ["Test","class","for","SlackOutput"]
docstr: SlackOutput - Format Message, Default Rule Description
docstr_tok: ["SlackOutput","-","Format","Message",",","Default","Rule","Description"]
code: def test_format_message_default_rule_description(self):
      """SlackOutput - Format Message, Default Rule Description"""
      rule_name = "test_empty_rule_description"
      alert = get_random_alert(10, rule_name, True)
      output = MagicMock(spec=SlackOutput)
      alert_publication = compose_alert(alert, output, "asdf")
      loaded_message = SlackOutput._format_message(
          alert, alert_publication
      )
  
      # tests
      default_rule_description = (
          "*Rule Description:*\nNo rule description provided\n"
      )
      assert_equal(
          loaded_message["attachments"][0]["pretext"],
          default_rule_description,
      )
  
imports: from collections import Counter, OrderedDict
  from mock import patch, Mock, MagicMock
  from nose.tools import assert_equal, assert_false, assert_true, assert_set_equal
  from streamalert.alert_processor.helpers import compose_alert
  from streamalert.alert_processor.outputs.slack import SlackOutput
  from tests.unit.streamalert.alert_processor.helpers import get_random_alert, get_alert
label_desc: Use image node_id 9 for calling the TestSlackOutput obj's underlying member method code with example usage: obj.test_format_message_default_rule_description() without return types