class_docstr: Test cases for binary operators.
code: def testMatMul(self):
      self._testMatMul(math_ops.matmul, self.float_types | {np.float64})
  
      for dtype in self.float_types | {np.float64}:
          self._testBinary(
              math_ops.matmul,
              np.array([[3.1415926535897932]], dtype=dtype),
              np.array([[2.7182818284590452]], dtype=dtype),
              expected=np.array([[8.5397342226735668]], dtype=dtype),
              rtol=1e-14,
          )
  
          # Edge case with a large range of exponent. Not supported by float16.
          if dtype != np.float16:
              self._testBinary(
                  math_ops.matmul,
                  np.array([[9.4039548065783000e-38]], dtype=dtype),
                  np.array([[4.5070591730234615e37]], dtype=dtype),
                  expected=np.array(
                      [[4.2384180773686798]], dtype=dtype
                  ),
                  rtol=1e-14,
              )
  
imports: import itertools
  import numpy
  from tensorflow.compiler.tests import xla_test
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import bitwise_ops
  from tensorflow.python.ops import gen_array_ops
  from tensorflow.python.ops import gen_math_ops
  from tensorflow.python.ops import gen_nn_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import nn_ops
  from tensorflow.python.platform import googletest
  from tensorflow.python.platform import test
label_desc: Use image node_id 25 for calling the BinaryOpsTest obj's underlying member method code with example usage: obj.testMatMul() without return types