def METHOD_NAME(monkeypatch):
    """
    another check that _sparsemean behaves like np.nanmean!
    monkeypatch the _score_genes._sparse_nanmean function to np.nanmean
    and check that the result is the same as the non-patched (i.e. sparse_nanmean)
    function
    """
    adata = _create_adata(100, 1000, p_zero=0.3, p_nan=0.3)
    gene_set = adata.var_names[:10]
    # the unpatched, i.e. _sparse_nanmean version
    sc.tl.score_genes(adata, gene_list=gene_set, score_name='Test')
    sparse_scores = adata.obs['Test'].values.tolist()
    # now patch _sparse_nanmean by np.nanmean inside sc.tools
    def mock_fn(x, axis):
        return np.nanmean(x.A, axis, dtype='float64')
    monkeypatch.setattr(sc.tools._score_genes, '_sparse_nanmean', mock_fn)
    sc.tl.score_genes(adata, gene_list=gene_set, score_name='Test')
    dense_scores = adata.obs['Test'].values
    np.testing.assert_allclose(sparse_scores, dense_scores)