diff --git a/R/csv.R b/R/csv.R index 5fce18f4..8a31022c 100644 --- a/R/csv.R +++ b/R/csv.R @@ -188,6 +188,9 @@ read_cmdstan_csv <- function(files, } } metadata <- csv_metadata[[1]] + if (metadata$method == "sample") { + metadata$num_chains <- length(csv_metadata) + } uniq_seed <- unique(metadata$seed) if (length(uniq_seed) == 1) { metadata$seed <- uniq_seed diff --git a/tests/testthat/test-fit-mcmc.R b/tests/testthat/test-fit-mcmc.R index 09507ba8..fd2bfc25 100644 --- a/tests/testthat/test-fit-mcmc.R +++ b/tests/testthat/test-fit-mcmc.R @@ -423,7 +423,8 @@ test_that("diagnostic_summary() works", { expect_equal(fit$diagnostic_summary(NULL), list()) }) -test_that("metadata()$time has chains rowss", { +test_that("metadata()$time has chains rows", { + expect_equal(fit_mcmc$metadata()$num_chains, fit_mcmc$num_chains()) expect_equal(nrow(fit_mcmc$metadata()$time), fit_mcmc$num_chains()) expect_equal(nrow(fit_mcmc_0$metadata()$time), fit_mcmc_0$num_chains()) expect_equal(nrow(fit_mcmc_1$metadata()$time), fit_mcmc_1$num_chains())