code: def _testThreeArgument(self, fn=array_ops.where):
      x = np.array([[-2, 3, -1], [1, -3, -3]])
      np_val = np.where(x > 0, x * x, -x)
      with self.test_session():
          tf_val = self.evaluate(
              fn(constant_op.constant(x) > 0, x * x, -x)
          )
      self.assertAllEqual(tf_val, np_val)
  
imports: import itertools
  import sys
  import numpy
  from tensorflow.python.client import session
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import random_ops
  from tensorflow.python.ops import resource_variable_ops
  from tensorflow.python.platform import benchmark
  from tensorflow.python.platform import test
label_desc: Use image node_id 8 for calling the WhereOpTest obj's underlying member method code with example usage: obj._testThreeArgument(fn) without return types