test_that("SpatRaster", { f <- system.file("extdata/cyl_temp.tif", package = "tidyterra") spatrast <- terra::rast(f) mod <- spatrast %>% mutate(exp_lyr1 = exp(tavg_04 / 10)) %>% relocate(exp_lyr1, .before = 1) expect_true(all(names(mod) == c("exp_lyr1", names(spatrast)))) expect_true(compare_spatrasters(spatrast, mod)) mod2 <- mod %>% relocate(tavg_05, .after = dplyr::last_col()) expect_true(compare_spatrasters(spatrast, mod2)) col_pos <- which(names(mod) == "tavg_05") expect_true( all(c(names(mod2)[-col_pos], names(mod2)[col_pos]) == names(mod)) ) }) test_that("SpatVector", { # SpatVector method f <- system.file("extdata/cyl.gpkg", package = "tidyterra") v <- terra::vect(f) mod <- v %>% mutate(exp_attr = "a") %>% relocate(exp_attr, .before = 1) expect_s4_class(mod, "SpatVector") expect_true(all(names(mod) == c("exp_attr", names(v)))) mod2 <- mod %>% relocate(cpro, .after = dplyr::last_col()) expect_s4_class(mod2, "SpatVector") col_pos <- which(names(mod) == "cpro") expect_true( all(c(names(mod2)[-col_pos], names(mod2)[col_pos]) == names(mod)) ) })