code: def test_selectv2_cond_fixed(self):
      cond = random_ops.random_uniform([3, 5]) > 0.5
      b = random_ops.random_uniform([2, 3, 5])
      # wherev2 assumes all shapes are broadcastable with each other.
      # This means that we can only specify conditions that are
      # broadcastable with [3, 5].
      for a_shape in [2], [2, 1], [2, 5], [2, 3, 1], [2, 3, 5]:
          a = random_ops.random_uniform(a_shape)
  
          # pylint: disable=cell-var-from-loop
          def loop_fn(i):
              a_i = array_ops.gather(a, i)
              b_i = array_ops.gather(b, i)
              return array_ops.where_v2(cond, a_i, b_i)
  
          # pylint: enable=cell-var-from-loop
  
          self._test_loop_fn(loop_fn, 2)
  
imports: import itertools
  from absl.testing import parameterized
  from tensorflow.python.eager import backprop
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import tensor
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import clip_ops
  from tensorflow.python.ops import linalg_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import nn
  from tensorflow.python.ops import random_ops
  from tensorflow.python.ops import special_math_ops
  from tensorflow.python.ops import tensor_array_grad
  from tensorflow.python.ops.parallel_for import control_flow_ops
  from tensorflow.python.ops.parallel_for.test_util import PForTestCase
  from tensorflow.python.platform import test
label_desc: Use image node_id 31 for calling the MathTest obj's underlying member method code with example usage: obj.test_selectv2_cond_fixed() and returns: array_ops