diff --git a/DESCRIPTION b/DESCRIPTION index 25fda37bb..56c5a5f58 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,5 +1,5 @@ Package: Seurat -Version: 5.2.0 +Version: 5.2.0.9001 Title: Tools for Single Cell Genomics Description: A toolkit for quality control, analysis, and exploration of single cell RNA sequencing data. 'Seurat' aims to enable users to identify and interpret sources of heterogeneity from single cell transcriptomic measurements, and to integrate diverse types of single cell data. See Satija R, Farrell J, Gennert D, et al (2015) , Macosko E, Basu A, Satija R, et al (2015) , Stuart T, Butler A, et al (2019) , and Hao, Hao, et al (2020) for more details. Authors@R: c( diff --git a/NEWS.md b/NEWS.md index b7d6e9359..a992acafb 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,8 @@ +# Unreleased + +## Changes +- Fixed `test_find_clusters.R` to accommodate variability in label assignments given by `FindClusters` across different systems ([#9641](https://github.com/satijalab/seurat/pull/9641)) + # Seurat 5.2.0 (2024-12-20) ## Changes diff --git a/tests/testthat/test_find_clusters.R b/tests/testthat/test_find_clusters.R index 0da9eb587..8e101a9cf 100644 --- a/tests/testthat/test_find_clusters.R +++ b/tests/testthat/test_find_clusters.R @@ -34,13 +34,17 @@ context("FindClusters") test_that("Smoke test for `FindClusters`", { test_case <- get_test_data() - # Spot check cluster assignments with using defaults. + # Validate cluster assignments using default parameters. results <- FindClusters(test_case)$seurat_clusters - expect_equal(results[[1]], factor(3, levels=0:5)) - expect_equal(results[[15]], factor(4, levels=0:5)) - expect_equal(results[[24]], factor(0, levels=0:5)) - expect_equal(results[[72]], factor(5, levels=0:5)) - expect_equal(results[[length(results)]], factor(2, levels=0:5)) + # Check that every cell was assigned to a cluster label. + expect_false(any(is.na(results))) + # Check that the expected cluster labels were assigned. + expect_equal(as.numeric(levels(results)), c(0, 1, 2, 3, 4, 5)) + # Check that the cluster sizes match the expected distribution. + expect_equal( + as.numeric(sort(table(results))), + c(9, 10, 10, 11, 20, 20) + ) # Check that every clustering algorithm can be run without errors. expect_no_error(FindClusters(test_case, algorithm = 1))