code: def test_argmin_argmax(self):
      x = random_ops.random_uniform([2, 3, 4, 5])
      for op in [math_ops.argmin, math_ops.argmax]:
          for axis in (1, None, -1):
              for output_dtype in (dtypes.int32, dtypes.int64, None):
                  # pylint: disable=cell-var-from-loop
                  def loop_fn(i):
                      a = array_ops.gather(x, i)
                      return op(a, axis=axis, output_type=output_dtype)
  
                  # 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 17 for calling the MathTest obj's underlying member method code with example usage: obj.test_argmin_argmax() and returns: op