update
This commit is contained in:
42
.CondaPkg/env/Lib/site-packages/scipy/linalg/tests/test_extending.py
vendored
Normal file
42
.CondaPkg/env/Lib/site-packages/scipy/linalg/tests/test_extending.py
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
import os
|
||||
import platform
|
||||
|
||||
import numpy as np
|
||||
import pytest
|
||||
|
||||
from scipy._lib._testutils import IS_EDITABLE, _test_cython_extension, cython
|
||||
from scipy.linalg.blas import cdotu # type: ignore[attr-defined]
|
||||
from scipy.linalg.lapack import dgtsv # type: ignore[attr-defined]
|
||||
|
||||
|
||||
@pytest.mark.fail_slow(60)
|
||||
# essential per https://github.com/scipy/scipy/pull/20487#discussion_r1567057247
|
||||
@pytest.mark.skipif(IS_EDITABLE,
|
||||
reason='Editable install cannot find .pxd headers.')
|
||||
@pytest.mark.skipif(platform.machine() in ["wasm32", "wasm64"],
|
||||
reason="Can't start subprocess")
|
||||
@pytest.mark.skipif(cython is None, reason="requires cython")
|
||||
def test_cython(tmp_path):
|
||||
srcdir = os.path.dirname(os.path.dirname(__file__))
|
||||
extensions, extensions_cpp = _test_cython_extension(tmp_path, srcdir)
|
||||
# actually test the cython c-extensions
|
||||
a = np.ones(8) * 3
|
||||
b = np.ones(9)
|
||||
c = np.ones(8) * 4
|
||||
x = np.ones(9)
|
||||
_, _, _, x, _ = dgtsv(a, b, c, x)
|
||||
a = np.ones(8) * 3
|
||||
b = np.ones(9)
|
||||
c = np.ones(8) * 4
|
||||
x_c = np.ones(9)
|
||||
extensions.tridiag(a, b, c, x_c)
|
||||
a = np.ones(8) * 3
|
||||
b = np.ones(9)
|
||||
c = np.ones(8) * 4
|
||||
x_cpp = np.ones(9)
|
||||
extensions_cpp.tridiag(a, b, c, x_cpp)
|
||||
np.testing.assert_array_equal(x, x_cpp)
|
||||
cx = np.array([1-1j, 2+2j, 3-3j], dtype=np.complex64)
|
||||
cy = np.array([4+4j, 5-5j, 6+6j], dtype=np.complex64)
|
||||
np.testing.assert_array_equal(cdotu(cx, cy), extensions.complex_dot(cx, cy))
|
||||
np.testing.assert_array_equal(cdotu(cx, cy), extensions_cpp.complex_dot(cx, cy))
|
||||
Reference in New Issue
Block a user