code: def test_full_rank(self):
      eps = 1.0e-12
  
      # fixed precision
      A = np.random.rand(16, 8)
      k, idx, proj = pymatrixid.interp_decomp(A, eps)
      assert_(k == A.shape[1])
  
      P = pymatrixid.reconstruct_interp_matrix(idx, proj)
      B = pymatrixid.reconstruct_skel_matrix(A, k, idx)
      assert_allclose(A, B.dot(P))
  
      # fixed rank
      idx, proj = pymatrixid.interp_decomp(A, k)
  
      P = pymatrixid.reconstruct_interp_matrix(idx, proj)
      B = pymatrixid.reconstruct_skel_matrix(A, k, idx)
      assert_allclose(A, B.dot(P))
  
imports: import scipy.linalg.interpolative
  import numpy
  from scipy.linalg import hilbert, svdvals, norm
  from scipy.sparse.linalg import aslinearoperator
  from scipy.linalg.interpolative import interp_decomp
  import itertools
  from numpy.testing import assert_, assert_allclose, assert_equal, assert_array_equal
  import pytest
  from pytest import raises
  import sys
label_desc: Use image node_id 14 for calling the TestInterpolativeDecomposition obj's underlying member method code with example usage: obj.test_full_rank() without return types