code: def verify_controller_module(module):
      
      required_attributes = ('create', 'destroy', 'MOBLY_CONTROLLER_CONFIG_NAME')
      for attr in required_attributes:
          if not hasattr(module, attr):
              raise signals.ControllerError(
                  'Module %s missing required controller module attribute'
                  ' %s.' % (module.__name__, attr))
          if not getattr(module, attr):
              raise signals.ControllerError(
                  'Controller interface %s in %s cannot be null.' %
                  (attr, module.__name__))
docs: Verifies a module object follows the required interface for
      controllers.
  
      The interface is explained in the docstring of
      `base_test.BaseTestClass.register_controller`.
  
      Args:
          module: An object that is a controller module. This is usually
              imported with import statements or loaded by importlib.
  
      Raises:
          ControllerError: if the module does not match the Mobly controller
              interface, or one of the required members is null.