code: def testEagerGraphOpConstructionIfControlFlow(self):
      instrument = _NumpyFunctionCallback()
      op_callbacks.add_op_callback(instrument.callback)
  
      @def_function.function
      def my_function_with_cond(x):
          if math_ops.greater(x, 0.0):
              return x**2.0
          else:
              return x**3.0
  
      x = constant_op.constant(-4.0)
      self.assertAllClose(my_function_with_cond(x), -64.0)
  
      self.assertIn(_IF_OP, instrument.graph_op_types)
      self.assertIn(_GREATER_OP, instrument.graph_op_types)
      self.assertIn(_POW_OP, instrument.graph_op_types)
      self.assertEqual(
          len(instrument.graph_op_names), len(instrument.graph_op_types)
      )
  
      # Check the graph internal ndarrays recorded at runtime.
      greater_op_outputs = instrument.graph_internal_ndarrays[
          _GREATER_OP
      ]
      self.assertEqual(len(greater_op_outputs), 1)
      self.assertAllClose(greater_op_outputs[0], False)
      # This was needed for backwards compatibility with TF2 Estimators which
      # rely on variable names.
      prefix = b"cond/" if context.executing_eagerly() else b""
      pow_op_outputs = instrument.graph_internal_ndarrays[
          b"%spow" % prefix
      ]
      self.assertEqual(len(pow_op_outputs), 1)
      self.assertAllClose(pow_op_outputs[0], -64.0)
  
imports: import threading
  import numpy
  from tensorflow.python.data.ops import dataset_ops
  from tensorflow.python.eager import backprop
  from tensorflow.python.eager import context
  from tensorflow.python.eager import def_function
  from tensorflow.python.eager import test
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import op_callbacks
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import sparse_tensor
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import control_flow_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import script_ops
  from tensorflow.python.ops import sparse_ops
  from tensorflow.python.ops import variables
  from tensorflow.python.util import compat
label_desc: Use image node_id 15 for calling the OpCallbacksTest obj's underlying member method code with example usage: obj.testEagerGraphOpConstructionIfControlFlow() and returns: unknown, unknown