test_that("Rename SpatRasters", {
file <- system.file("extdata/cyl_tile.tif", package = "tidyterra")
raster <- terra::rast(file)
s2 <- rename(raster, b1 = cyl_tile_1)
expect_identical(
names(s2),
c("b1", "cyl_tile_2", "cyl_tile_3")
)
expect_true(compare_spatrasters(raster, s2))
# Several renames
s3 <- rename(raster,
this_first = cyl_tile_1,
this_second = cyl_tile_2
)
expect_true(compare_spatrasters(raster, s3))
expect_identical(
names(s3),
c("this_first", "this_second", "cyl_tile_3")
)
})
test_that("Rename SpatRasters with", {
file <- system.file("extdata/cyl_tile.tif", package = "tidyterra")
raster <- terra::rast(file)
s2 <- rename_with(raster,
toupper,
.cols = dplyr::starts_with("c")
)
expect_true(compare_spatrasters(raster, s2))
expect_identical(
names(s2),
toupper(names(raster))
)
# End with
s3 <- rename_with(s2, tolower, .cols = dplyr::ends_with("3"))
expect_true(compare_spatrasters(raster, s3))
expect_identical(
names(s3),
c(
toupper(names(raster)[-3]),
tolower(names(raster)[3])
)
)
})
test_that("Rename SpatVectors", {
file <- system.file("extdata/cyl.gpkg", package = "tidyterra")
vector <- terra::vect(file)
s2 <- rename(vector, b1 = iso2)
expect_s4_class(s2, "SpatVector")
expect_identical(
names(s2),
c("b1", names(vector)[-1])
)
# Several renames
s3 <- rename(vector,
this_first = iso2,
this_second = cpro
)
expect_s4_class(s3, "SpatVector")
expect_identical(
names(s3),
c("this_first", "this_second", names(vector)[-c(1, 2)])
)
})
test_that("Rename SpatVectors with", {
file <- system.file("extdata/cyl.gpkg", package = "tidyterra")
vector <- terra::vect(file)
s2 <- rename_with(vector, toupper, .cols = dplyr::contains("o"))
expect_s4_class(s2, "SpatVector")
expect_identical(
names(s2),
c(
toupper(names(vector))[-3],
names(vector)[3]
)
)
# Several renames
s3 <- rename_with(s2, tolower, .cols = dplyr::ends_with("2"))
expect_identical(
names(s3),
c("iso2", "CPRO", "name")
)
})
test_that("rename preserves grouping", {
df <- tibble::tibble(g = 1:3, x = 3:1)
df <- as_spatvector(df, geom = c("g", "x"), keepgeom = TRUE)
gf <- group_by(df, g)
out <- rename(gf, h = g)
expect_equal(group_vars(out), "h")
})
test_that("arguments to rename() don't match vars_rename() arguments", {
df <- data.frame(a = 1, lat = 1, lon = 1)
df <- as_spatvector(df)
expect_identical(rename(df, var = a) %>% as_tibble(), tibble::tibble(var = 1))
expect_identical(
rename(group_by(df, a), var = a) %>% as_tibble(),
group_by(data.frame(var = 1), var)
)
expect_identical(
rename(df, strict = a) %>% as_tibble(),
tibble::tibble(strict = 1)
)
expect_identical(
rename(group_by(df, a), strict = a) %>% as_tibble(),
group_by(tibble::tibble(strict = 1), strict)
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.