docstr: Tests that all rules are being tested.
code: def test_completeness(self):
      """
      Tests that all rules are being tested.
      """
      if not self.class_:
          return  # This is the base class testing, it is always complete.
  
      classes_to_ignore = [TradingDayOfWeekRule, TradingDayOfMonthRule]
  
      dem = {
          k
          for k, v in iteritems(vars(catalyst.utils.events))
          if isinstance(v, type)
          and issubclass(v, self.class_)
          and v is not self.class_
          and v not in classes_to_ignore
          and not isabstract(v)
      }
      ds = {
          k[5:]
          for k in dir(self)
          if k.startswith("test") and k[5:] in dem
      }
      self.assertTrue(
          dem <= ds,
          msg="This suite is missing tests for the following classes:\n"
          + "\n".join(map(repr, dem - ds)),
      )
  
imports: import datetime
  from inspect import isabstract
  import random
  from unittest import TestCase
  import warnings
  from nose_parameterized import parameterized
  import pandas
  from six import iteritems
  from six.moves import range, map
  import catalyst.utils.events
  from catalyst.utils.calendars import get_calendar
  from catalyst.utils.events import EventRule, StatelessRule, Always, Never, AfterOpen, ComposedRule, BeforeClose, NotHalfDay, NthTradingDayOfWeek, NDaysBeforeLastTradingDayOfWeek, NthTradingDayOfMonth, NDaysBeforeLastTradingDayOfMonth, StatefulRule, OncePerDay, _build_offset, _build_date, _build_time, EventManager, Event, MAX_MONTH_RANGE, MAX_WEEK_RANGE, TradingDayOfMonthRule, TradingDayOfWeekRule
label_desc: Use image node_id 2 for calling the RuleTestCase obj's underlying member method code with example usage: obj.test_completeness() without return types