code: def test_getdefiningclass(self):
      class Superclass(object):
          def foo(self):
              pass
  
          def bar(self):
              pass
  
          @classmethod
          def class_method(cls):
              pass
  
      class Subclass(Superclass):
          def foo(self):
              pass
  
          def baz(self):
              pass
  
      self.assertIs(
          inspect_utils.getdefiningclass(Subclass.foo, Subclass),
          Subclass,
      )
      self.assertIs(
          inspect_utils.getdefiningclass(Subclass.bar, Subclass),
          Superclass,
      )
      self.assertIs(
          inspect_utils.getdefiningclass(Subclass.baz, Subclass),
          Subclass,
      )
      self.assertIs(
          inspect_utils.getdefiningclass(
              Subclass.class_method, Subclass
          ),
          Superclass,
      )
  
imports: import abc
  import collections
  import functools
  import imp
  import textwrap
  import unittest
  import six
  from nvidia.dali._autograph.pyct import inspect_utils
  from nvidia.dali._autograph.pyct.testing import basic_definitions
  from nvidia.dali._autograph.pyct.testing import decorators
label_desc: Use image node_id 23 for calling the InspectUtilsTest obj's underlying member method code with example usage: obj.test_getdefiningclass() without return types