code: def testDecorator(self):
      sub_registered = registry.lookup("DecoratorSub", DecoratorBase)
      self.assertEqual(sub_registered, DecoratorSub)
  
      alias_registered = registry.lookup("alias", DecoratorBase)
      self.assertEqual(alias_registered, DecoratorAlias)
  
      sub_method_registered = registry.lookup(
          "valid_decorated_sub_method", base_method
      )
      self.assertEqual(
          sub_method_registered, valid_decorated_sub_method
      )
  
      invalid_base = registry.lookup("InvalidSub", InvalidSub)
      self.assertIsNone(invalid_base)
  
      invalid_sub = registry.lookup("InvalidSub", DecoratorBase)
      self.assertIsNone(invalid_sub)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from absl.testing import absltest
  from model_search import registry
label_desc: Use image node_id 2 for calling the RegisterTest obj's underlying member method code with example usage: obj.testDecorator() without return types