code: def _testSparseSparse(
      self, transpose_a, transpose_b, adjoint_a, adjoint_b
  ):
      if not self._gpu_available:
          return
      sparsify = lambda m: m * (m > 0)
      dense_shape_a = (
          [5, 13, 7] if transpose_a or adjoint_a else [5, 7, 13]
      )
      dense_shape_b = (
          [5, 15, 13] if transpose_b or adjoint_b else [5, 13, 15]
      )
      dtypes_to_test = [np.float32, np.complex64]
      for dtype in dtypes_to_test:
          a_mats = sparsify(
              (
                  np.random.randn(*dense_shape_a)
                  + 1.0j * np.random.randn(*dense_shape_a)
              )
          ).astype(dtype)
          b_mats = sparsify(
              (
                  np.random.randn(*dense_shape_b)
                  + 1.0j * np.random.randn(*dense_shape_b)
              )
          ).astype(dtype)
          a_sm = sparse_csr_matrix_ops.CSRSparseMatrix(a_mats)
          b_sm = sparse_csr_matrix_ops.CSRSparseMatrix(b_mats)
          c_dense = test_util.matmul_without_tf32(
              a_mats,
              b_mats,
              transpose_a=transpose_a,
              transpose_b=transpose_b,
              adjoint_a=adjoint_a,
              adjoint_b=adjoint_b,
          )
          c_sm = sparse_csr_matrix_ops.matmul(
              a_sm,
              b_sm,
              transpose_a=transpose_a,
              transpose_b=transpose_b,
              adjoint_a=adjoint_a,
              adjoint_b=adjoint_b,
          )
          self.assertIsInstance(
              c_sm, sparse_csr_matrix_ops.CSRSparseMatrix
          )
          c_sm_dense = c_sm.to_dense()
          c_dense, c_sm_dense = self.evaluate([c_dense, c_sm_dense])
          self.assertAllClose(c_dense, c_sm_dense)
  
imports: import itertools
  import numpy
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import sparse_tensor
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops.linalg.sparse import sparse_csr_matrix_ops
  from tensorflow.python.platform import test
label_desc: Use image node_id 2 for calling the SparseMatrixMatmulTest obj's underlying member method code with example usage: obj._testSparseSparse(transpose_a, transpose_b, adjoint_a, adjoint_b) without return types