code: def test_traverse_obj():
      from deepchem.utils.differentiation_utils.editable_module import (
          _traverse_obj,
          torch_float_type,
      )
  
      class A:
          def __init__(self):
              self.a = 2
              self.b = torch.tensor(3.0)
              self.c = torch.tensor(4.0)
              self.d = torch.tensor(5.0)
  
      a = A()
  
      def action(elmt, name, objdict, key):
          print(name, elmt)
  
      def crit(elmt):
          return (
              isinstance(elmt, torch.Tensor)
              and elmt.dtype in torch_float_type
          )
  
      a = _traverse_obj(a, "", action, crit)
  
imports: import pytest
label_desc: Use image node_id 9 for calling a global function with example usage: test_traverse_obj() and returns: unknown