code: def test_if_attributes(self):
      def test_fn(a):
          if a > 0:
              a.b = -a.c
              d = 2 * a
          else:
              a.b = a.c
              d = 1
          return d
  
      node, _ = self._parse_and_analyze(test_fn)
      if_node = node.body[0]
      self.assertScopeIs(
          anno.getanno(if_node, NodeAnno.BODY_SCOPE),
          ("a", "a.c"),
          ("a.b", "d"),
      )
      self.assertScopeIs(
          anno.getanno(if_node, NodeAnno.ORELSE_SCOPE),
          ("a", "a.c"),
          ("a.b", "d"),
      )
      self.assertScopeIs(
          anno.getanno(if_node, NodeAnno.BODY_SCOPE).parent,
          ("a", "a.c", "d"),
          ("a.b", "d"),
      )
  
imports: import unittest
  import gast
  from nvidia.dali._autograph.pyct import anno
  from nvidia.dali._autograph.pyct import naming
  from nvidia.dali._autograph.pyct import parser
  from nvidia.dali._autograph.pyct import qual_names
  from nvidia.dali._autograph.pyct import transformer
  from nvidia.dali._autograph.pyct.static_analysis import activity
  from nvidia.dali._autograph.pyct.static_analysis import annos
label_desc: Use image node_id 10 for calling the ActivityAnalyzerTest obj's underlying member method code with example usage: obj.test_if_attributes() and returns: d