code: def _testCmp(self, a, b, out, f):
      a = t2a(tf.convert_to_tensor(value=a, dtype=np.int32))
      b = t2a(tf.convert_to_tensor(value=b, dtype=np.int32))
      types = [
          [np.int32, np.int32],
          [np.int64, np.int32],
          [np.int32, np.int64],
          [np.float32, np.int32],
          [np.int32, np.float32],
          [np.float32, np.float32],
          [np.float64, np.float32],
          [np.float32, np.float64],
      ]
      for a_type, b_type in types:
          o = f(a.astype(a_type), b.astype(b_type))
          self.assertAllEqual(out, o)
  
imports: from collections import abc
  import numpy
  import tensorflow.compat.v2
  from trax.tf_numpy.numpy_impl import arrays
  from trax.tf_numpy.numpy_impl import math_ops
label_desc: Use image node_id 15 for calling the ArrayTest obj's underlying member method code with example usage: obj._testCmp(a, b, out, f) without return types