Nothing
suppressPackageStartupMessages(library(testthat))
test_that("with_apsimx", {
# Get models
models <- Sys.getenv("APSIMNG_MODELS")
skip_if(nchar(models) == 0)
skip_if_not(file.exists(models))
# Get example file
file <- system.file("extdata/wheat.apsimx", package = "rapsimng")
skip_if_not(file.exists(file))
mets <- system.file("extdata/example.met", package = "rapsimng")
skip_if_not(file.exists(mets))
expect_error({
a <- with_apsimx("A", file, mets)
})
expect_error({
a <- with_apsimx(models, "AAA", mets)
})
expect_error({
a <- with_apsimx(models, file, "AAA")
})
expect_error({
a <- with_apsimx(models, file, mets, csv = TRUE, clean = "no-type")
})
expect_no_error({
a <- with_apsimx(models, file, mets, csv = TRUE, clean = "all")
})
expect_no_error({
a <- with_apsimx(models, file, mets, csv = TRUE, clean = "simulations")
})
expect_warning({
a <- with_apsimx(models, file, mets, csv = TRUE, clean = "mets")
})
post_process <- function(folder, para1 = 10) {
output_files <- list.files(folder, full.names = TRUE)
message(output_files)
harvest_report <- output_files[grepl("HarvestReport", output_files)]
if (length(harvest_report) == 0) {
return(NULL)
}
read.csv(harvest_report)
}
expect_no_error({
res <- with_apsimx(models, file, mets, csv = TRUE, clean = "all", post_process = post_process)
})
expect_equal(nrow(res), 12)
post_process <- function(folder, para1 = 10) {
return(para1)
}
expect_no_error({
res <- with_apsimx(models, file, mets, csv = TRUE, clean = "all", post_process = post_process)
})
expect_equal(res, 10)
expect_no_error({
res <- with_apsimx(models, file, mets, csv = TRUE, clean = "all", post_process = post_process, para1 = 100)
})
expect_equal(res, 100)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.