diff --git a/R/downloads.R b/R/downloads.R index bde50a24..7fef1389 100644 --- a/R/downloads.R +++ b/R/downloads.R @@ -33,8 +33,9 @@ download <- function(model_output, type, path_results, input, language = NULL) { out <- naomi::hintr_prepare_agyw_download(model_output, input$pjnz, download_path) } else if (type == "datapack") { - model_fit_id <- input$state$model_fit$id - calibrate_id <- input$state$calibrate$id + state_json <- jsonlite::fromJSON(input$state, simplifyVector = FALSE) + model_fit_id <- state_json$model_fit$id + calibrate_id <- state_json$calibrate$id ids <- data.frame(c("model_fit", "calibrate"), c(model_fit_id, calibrate_id)) out <- naomi::hintr_prepare_datapack_download(model_output, diff --git a/tests/testthat/test-01-endpoints-download.R b/tests/testthat/test-01-endpoints-download.R index f1201c4c..473ea9c3 100644 --- a/tests/testthat/test-01-endpoints-download.R +++ b/tests/testthat/test-01-endpoints-download.R @@ -1035,7 +1035,9 @@ test_that("datapack download returns bytes", { ## Submit download request submit <- endpoint_download_submit(q$queue) - submit_response <- submit$run(q$calibrate_id, "datapack") + payload <- setup_payload_download_request(include_vmmc = TRUE, + include_notes = FALSE) + submit_response <- submit$run(q$calibrate_id, "datapack", payload) expect_equal(submit_response$status_code, 200) expect_true(!is.null(submit_response$data$id))