test_that("TIFFErrorHandler_ works", {
tmptxt <- tempfile(fileext = ".txt") %>%
stringr::str_replace_all(stringr::coll("\\"), "/")
writeLines(c("a", "b"), tmptxt)
expect_error(
suppressWarnings(tif_read(tmptxt, msg = FALSE)),
"does not appear to be a valid TIFF file"
)
})
test_that("write_tif() errors correctly", {
aaaa <- array(0, dim = rep(4, 4))
expect_error(
tif_write(aaaa, "path/", msg = FALSE),
"path.+cannot end with.+/"
)
expect_error(
write_tif(aaaa, "a", bits_per_sample = "abc", msg = FALSE),
"bits_per_sample.+string.+auto.+only"
)
expect_error(
write_tif(aaaa, "a", bits_per_sample = 12, msg = FALSE),
"bits_per_sample.+12"
)
aaaa[1] <- -2 * .Call("float_max_C", PACKAGE = "ijtiff")
expect_error(
write_tif(aaaa, "a", msg = FALSE),
"lowest allowable negative value"
)
aaaa[1] <- -1
aaaa[2] <- 2 * .Call("float_max_C", PACKAGE = "ijtiff")
expect_error(
write_tif(aaaa, "a", msg = FALSE),
"max.+value"
)
aaaa[2] <- 1
aaaa[1] <- 0.5
expect_error(
write_tif(aaaa, "a", bits_per_sample = 16, msg = FALSE),
"necessary.+32 bit"
)
aaaa[1] <- 2^33
expect_error(
write_tif(aaaa, "a", bits_per_sample = 16, msg = FALSE),
"max.+value"
)
aaaa[1] <- 2^20
expect_error(
write_tif(aaaa, "a", bits_per_sample = 16, msg = FALSE),
"16.+max.+need.+32"
)
expect_error(
suppressWarnings(
read_tif(test_path("testthat-figs", "bad_ij1.tif"), msg = FALSE)
),
"ImageJ.+13 images of 5 slices of 2 channels"
)
expect_error(
suppressWarnings(
read_tif(test_path("testthat-figs", "bad_ij2.tif"), msg = FALSE)
),
"ImageJ.+8 frames AND 5 slices.+does not make sense"
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.