test_that("pad_raster can handle all raster inputs", {
landscape_matrix <- terra::as.matrix(landscape, wide = TRUE)
expect_type(pad_raster(landscape), "list")
expect_type(pad_raster(landscape_stack), "list")
expect_type(pad_raster(landscape_list), "list")
expect_type(pad_raster(landscape_matrix, return_raster = FALSE, to_disk = FALSE), "list")
})
test_that("pad_raster adds correct number of rows/cols", {
result_a <- pad_raster(landscape, pad_raster_cells = 1, global = TRUE)[[1]]
result_b <- pad_raster(landscape, pad_raster_cells = 5, global = TRUE)[[1]]
# original landscape is 30 x 30 and adding 1 rows/cols in each direction
expect_equal(object = terra::nrow(result_a), expected = 32)
expect_equal(object = terra::nrow(result_a), expected = 32)
# original landscape is 30 x 30 and adding 5 rows/cols in each direction
expect_equal(object = terra::nrow(result_b), expected = 40)
expect_equal(object = terra::nrow(result_b), expected = 40)
})
test_that("pad_raster can add different padding values", {
result <- pad_raster(landscape, pad_raster_value = NA)[[1]]
expect_true(anyNA(terra::values(result, mat = FALSE)))
})
test_that("pad_raster can return RasterLayer and matrix", {
raster_layer <- pad_raster(landscape)[[1]]
mat <- pad_raster(landscape, return_raster = FALSE)[[1]]
expect_s4_class(object = raster_layer, class = "SpatRaster")
expect_true(is.matrix(mat))
})
test_that("pad_raster can return write to disk", {
result <- pad_raster(landscape, to_disk = TRUE)
expect_false(object = terra::inMemory(result[[1]]))
})
test_that("pad_raster returns warning for matrix and return_raster = TRUE", {
expect_warning(object = pad_raster(landscape_matrix, return_raster = TRUE),
regexp = "'return_raster = TRUE' or 'to_disk = TRUE' not able for matrix input.")
expect_warning(object = pad_raster(landscape_matrix, to_disk = TRUE),
regexp = "'return_raster = TRUE' or 'to_disk = TRUE' not able for matrix input.")
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.