docstr: succeed iff hasattr(obj,attr) or attr in ignore. 
docstr_tok: ["succeed","iff","hasattr","(","obj",",","attr",")","or","attr","in","ignore","."]
code: def assertHasattr(self, obj, attr, ignore):
      """succeed iff hasattr(obj,attr) or attr in ignore."""
      if attr in ignore:
          return
      if not hasattr(obj, attr):
          print("???", attr)
      self.assertTrue(
          hasattr(obj, attr), "expected hasattr(%r, %r)" % (obj, attr)
      )
  
imports: import sys
  from textwrap import dedent
  from types import FunctionType, MethodType, BuiltinFunctionType
  import pyclbr
  from unittest import TestCase, main
  from test.test_importlib import util
  import warnings
label_desc: Use image node_id 2 for calling the PyclbrTest obj's underlying member method code with example usage: obj.assertHasattr(obj, attr, ignore) without return types