class_docstr: TestRule class
class_docstr_tok: ["TestRule","class"]
docstr: Rule - Rule Checksum
docstr_tok: ["Rule","-","Rule","Checksum"]
code: def test_rule_checksum(self):
      """Rule - Rule Checksum"""
      # The known dumped ast of a function that just returns False is below
      ast_value = "Return(value=NameConstant(value=False))"
  
      # The known checksum of the above is # c119f541816c6364ea3e2e884ba18f9c
      expected_checksum = hashlib.md5(
          ast_value.encode("utf-8")
      ).hexdigest()  # nosec
  
      # Test rule without a docstring
      rule.Rule(_test_checksum, logs=["log_type"])
      assert_equal(
          rule.Rule._rules["_test_checksum"].checksum, expected_checksum
      )
  
      # Test rule with a docstring
      rule.Rule(_test_checksum_doc, logs=["log_type"])
      assert_equal(
          rule.Rule._rules["_test_checksum_doc"].checksum,
          expected_checksum,
      )
  
imports: import hashlib
  from mock import patch
  from nose.tools import assert_equal, assert_true, raises
  from streamalert.shared import rule, rule_table
label_desc: Use image node_id 17 for calling the TestRule obj's underlying member method code with example usage: obj.test_rule_checksum() without return types