diff --git a/tests/test_qc_metrics.py b/tests/test_qc_metrics.py index 9c4cb75c12..fd043ab0dc 100644 --- a/tests/test_qc_metrics.py +++ b/tests/test_qc_metrics.py @@ -1,10 +1,13 @@ from __future__ import annotations +from importlib.metadata import version + import numpy as np import pandas as pd import pytest from anndata import AnnData from anndata.tests.helpers import assert_equal +from packaging.version import Version from scipy import sparse import scanpy as sc @@ -18,7 +21,7 @@ ) from testing.scanpy._helpers import as_sparse_dask_array, maybe_dask_process_context from testing.scanpy._pytest.marks import needs -from testing.scanpy._pytest.params import ARRAY_TYPES +from testing.scanpy._pytest.params import ARRAY_TYPES, ARRAY_TYPES_MEM @pytest.fixture @@ -198,8 +201,18 @@ def adata_mito(): return adata_dense, init_var +skip_if_adata_0_12 = pytest.mark.skipif( + Version(version("anndata")) >= Version("0.12.0.dev0"), + reason="Newer AnnData removes implicit support for COO matrices", +) + + @pytest.mark.parametrize( - "cls", [np.asarray, sparse.csr_matrix, sparse.csc_matrix, sparse.coo_matrix] + "cls", + [ + *ARRAY_TYPES_MEM, + pytest.param(sparse.coo_matrix, marks=[skip_if_adata_0_12], id="scipy_coo"), + ], ) def test_qc_metrics_format(cls): adata_dense, init_var = adata_mito()