code: def test_sparse_expm_multiply_interval_dtypes(self):
      # Test A & B int
      A = scipy.sparse.diags(np.arange(5), format="csr", dtype=int)
      B = np.ones(5, dtype=int)
      Aexpm = scipy.sparse.diags(np.exp(np.arange(5)), format="csr")
      assert_allclose(expm_multiply(A, B, 0, 1)[-1], Aexpm.dot(B))
  
      # Test A complex, B int
      A = scipy.sparse.diags(
          -1j * np.arange(5), format="csr", dtype=complex
      )
      B = np.ones(5, dtype=int)
      Aexpm = scipy.sparse.diags(
          np.exp(-1j * np.arange(5)), format="csr"
      )
      assert_allclose(expm_multiply(A, B, 0, 1)[-1], Aexpm.dot(B))
  
      # Test A int, B complex
      A = scipy.sparse.diags(np.arange(5), format="csr", dtype=int)
      B = 1j * np.ones(5, dtype=complex)
      Aexpm = scipy.sparse.diags(np.exp(np.arange(5)), format="csr")
      assert_allclose(expm_multiply(A, B, 0, 1)[-1], Aexpm.dot(B))
  
imports: from __future__ import division, print_function, absolute_import
  import numpy
  from numpy.testing import assert_allclose, assert_, assert_equal
  from scipy._lib._numpy_compat import suppress_warnings
  from scipy.sparse import SparseEfficiencyWarning
  import scipy.linalg
  from scipy.sparse.linalg._expm_multiply import _theta, _compute_p_max, _onenormest_matrix_power, expm_multiply, _expm_multiply_simple, _expm_multiply_interval
label_desc: Use image node_id 4 for calling the TestExpmActionInterval obj's underlying member method code with example usage: obj.test_sparse_expm_multiply_interval_dtypes() without return types