11import numpy as np
2+ import pytest
23
34
45def assert_metrics_close (actual : dict , expected : dict , atol = 1e-3 ):
@@ -25,3 +26,23 @@ def test_expression_transfer(self, cmap, expected_expression_transfer_metrics):
2526 cmap .transfer_expression (layer_key = "X" )
2627 cmap .evaluate_expression_transfer (layer_key = "X" , method = "pearson" )
2728 assert_metrics_close (cmap .expression_transfer_metrics , expected_expression_transfer_metrics )
29+
30+ @pytest .mark .parametrize ("method" , ["gaussian" , "scarches" , "random" , "inverse_distance" , "jaccard" , "hnoca" ])
31+ def test_compute_mapping_matrix_all_methods (self , cmap , method ):
32+ cmap .compute_mappping_matrix (method = method )
33+ assert cmap .mapping_matrix is not None
34+
35+ @pytest .mark .parametrize ("layer_key" , ["X" , "counts" ])
36+ def test_expression_transfer_layers (self , cmap , layer_key ):
37+ cmap .transfer_expression (layer_key = layer_key )
38+ assert cmap .query_imputed is not None
39+ assert cmap .query_imputed .X .shape [0 ] == cmap .query .n_obs
40+
41+ @pytest .mark .parametrize ("eval_layer" , ["X" , "counts" ])
42+ @pytest .mark .parametrize ("corr_method" , ["pearson" , "spearman" ])
43+ def test_evaluate_expression_transfer_layers_and_methods (self , cmap , eval_layer , corr_method ):
44+ cmap .transfer_expression (layer_key = "X" )
45+ cmap .evaluate_expression_transfer (layer_key = eval_layer , method = corr_method )
46+ metrics = cmap .expression_transfer_metrics
47+ assert metrics ["method" ] == corr_method
48+ assert metrics ["n_valid_genes" ] > 0
0 commit comments