MCPcopy Index your code
hub / github.com/SingleRust/SingleRust / test_edge_cases

Function test_edge_cases

src/memory/processing/diffexp/mod.rs:1316–1370  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1314
1315 #[test]
1316 fn test_edge_cases() -> anyhow::Result<()> {
1317 let adata = create_test_anndata()?;
1318
1319 let result = rank_gene_groups(
1320 &adata,
1321 "group",
1322 Some("B"),
1323 Some(&["INVALID_GROUP"]),
1324 Some("error_test"),
1325 None,
1326 None,
1327 CorrectionMethod::BejaminiHochberg,
1328 None,
1329 None,
1330 );
1331 assert!(result.is_err(), "Should fail with invalid group name");
1332
1333 let result = rank_gene_groups(
1334 &adata,
1335 "group",
1336 Some("INVALID_REF"),
1337 Some(&["A"]),
1338 Some("error_test2"),
1339 None,
1340 None,
1341 CorrectionMethod::BejaminiHochberg,
1342 None,
1343 None,
1344 );
1345 assert!(result.is_err(), "Should fail with invalid reference group");
1346
1347 rank_gene_groups(
1348 &adata,
1349 "group",
1350 Some("B"),
1351 Some(&["A"]),
1352 Some("zero_genes"),
1353 None,
1354 Some(0),
1355 CorrectionMethod::BejaminiHochberg,
1356 None,
1357 None,
1358 )?;
1359
1360 let uns = adata.uns();
1361 let scores = uns.get_data("rank_genes_groups_zero_genes_scores")?;
1362 match scores.get_data()? {
1363 Data::ArrayData(ArrayData::DataFrame(df)) => {
1364 assert_eq!(df.height(), 0, "Should return 0 genes when n_genes=0");
1365 }
1366 _ => panic!("Expected DataFrame for scores"),
1367 }
1368
1369 Ok(())
1370 }
1371
1372 fn create_test_anndata_three_groups() -> anyhow::Result<IMAnnData> {
1373 let mut rows = Vec::new();

Callers

nothing calls this directly

Calls 2

create_test_anndataFunction · 0.85
rank_gene_groupsFunction · 0.85

Tested by

no test coverage detected