Nothing
test_that("can get the tzdb path", {
expect_silent(x <- tzdb_path("text"))
expect_length(x, 1)
expect_type(x, "character")
})
test_that("can only use text right now", {
expect_snapshot_error(tzdb_path("binary"))
})
test_that("path to the text `tzdata` can contain Unicode (#10)", {
skip_on_cran()
skip_if(tzdb_use_os_tzdb_cpp())
# Get existing install location and all files to copy
dir_old <- tzdb_path(type = "text")
on.exit(
expr = {
tzdb_set_install(dir_old)
tzdb_reload_cpp()
},
add = TRUE
)
files_old <- dir(dir_old, full.names = TRUE)
base_names <- basename(files_old)
# Copy files into a temp directory with a Unicode name
dir_temp <- tempdir()
dir_new <- paste0(dir_temp, "/", "\u5bf0\u612d")
dir_new <- chr_reencode(dir_new)
dir.create(dir_new)
on.exit(unlink(dir_new, recursive = TRUE), add = TRUE)
files_new <- paste0(dir_new, "/", base_names)
files_new <- chr_reencode(files_new)
copied <- file.copy(files_old, files_new)
expect_true(all(copied))
# Change the version in the file so we have something to check
path_version_new <- files_new[base_names == "version"]
expect_length(path_version_new, 1L)
write_version <- function(path, version) {
# Small helper to ensure we close the file before reading from it
con <- file(path, open = "wb", encoding = "UTF-8")
on.exit(close(con), add = TRUE)
writeLines(version, con = con, useBytes = TRUE)
}
version <- chr_reencode("9999a")
write_version(path_version_new, version)
# Change the install directory, reload the database, and check for the new version
tzdb_set_install(dir_new)
tzdb_reload_cpp()
expect_identical(tzdb_version(), version)
})
test_that("version has been reverted back to the original after running the above test (#10)", {
skip_on_cran()
skip_if(tzdb_use_os_tzdb_cpp())
expect_identical(tzdb_version(), "2023c")
})
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.