def test_isintlike(self): assert_equal(sputils.isintlike(-4), True) assert_equal(sputils.isintlike(np.array(3)), True) assert_equal(sputils.isintlike(np.array([3])), False) with assert_raises( ValueError, match="Inexact indices into sparse matrices are not allowed"): sputils.isintlike(3.0) assert_equal(sputils.isintlike(2.5), False) assert_equal(sputils.isintlike(1 + 3j), False) assert_equal(sputils.isintlike((1, )), False) assert_equal(sputils.isintlike((1, 2)), False)
def __init__(self, A, p): if not isinstance(A, LinearOperator): raise ValueError('LinearOperator expected as A') if A.shape[0] != A.shape[1]: raise ValueError('square LinearOperator expected, got %r' % A) if not isintlike(p) or p < 0: raise ValueError('non-negative integer expected as p') super().__init__(_get_dtype([A]), A.shape) self.args = (A, p)
def test_isintlike(self): assert_equal(sputils.isintlike(-4), True) assert_equal(sputils.isintlike(np.array(3)), True) assert_equal(sputils.isintlike(np.array([3])), False) with suppress_warnings() as sup: sup.filter(DeprecationWarning, "Inexact indices into sparse matrices are deprecated") assert_equal(sputils.isintlike(3.0), True) assert_equal(sputils.isintlike(2.5), False) assert_equal(sputils.isintlike(1 + 3j), False) assert_equal(sputils.isintlike((1, )), False) assert_equal(sputils.isintlike((1, 2)), False)