code: def test_pca_sparse_input(setup):
      for svd_solver in solver_list:
          X = np.random.RandomState(0).rand(5, 4)
          X = mt.tensor(sp.sparse.csr_matrix(X))
          assert X.issparse() is True
  
          pca = PCA(n_components=3, svd_solver=svd_solver)
  
          assert_raises(TypeError, pca.fit, X)
  
imports: from itertools import product
  import numpy
  import pytest
  import scipy
  from sklearn import datasets
  from sklearn.utils._testing import assert_array_almost_equal, assert_almost_equal, assert_raises_regex, assert_raise_message, assert_raises
  from ....None import tensor
  from .._pca import PCA, _assess_dimension, _infer_dimension
label_desc: Use image node_id 25 for calling a global function with example usage: test_pca_sparse_input(setup) without return types