context("helpers")
test_that("user", {
skip_on_windows()
id <- user()
expect_is(id, "character")
expect_match(id, "^[0-9]+$")
expect_equal(id, system3("id", "-u")$output)
})
test_that("user, width group", {
skip_on_windows()
id <- user(group = TRUE)
expect_is(id, "character")
expect_match(id, "^[0-9]+:[0-9]+$")
expect_equal(id, sprintf("%s:%s",
system3("id", "-u")$output,
system3("id", "-g")$output))
})
test_that("pick user", {
skip_on_windows()
expect_equal(user("root"), "0")
expect_equal(user("root", TRUE), "0:0")
})
test_that("missing user", {
skip_on_windows()
nm <- rand_str()
expect_error(user(nm), "'id' failed with message:")
})
test_that("no numeric_id on windows", {
expect_error(numeric_id(NULL, FALSE, TRUE),
"Cannot return numeric id on windows")
expect_error(numeric_id(NULL, TRUE, TRUE),
"Cannot return numeric id on windows")
})
test_that("user_name", {
expect_identical(user_name("rich"), "rich")
withr::with_envvar(
c(LOGNAME = NA, USER = NA, LNAME = NA, USERNAME = NA),
expect_error(user_name(NULL), "could not determine username"))
withr::with_envvar(
c(LOGNAME = NA, USER = NA, LNAME = NA, USERNAME = "a"),
expect_identical(user_name(NULL), "a"))
withr::with_envvar(
c(LOGNAME = NA, USER = NA, LNAME = "b", USERNAME = "a"),
expect_identical(user_name(NULL), "b"))
withr::with_envvar(
c(LOGNAME = NA, USER = "c", LNAME = "b", USERNAME = "a"),
expect_identical(user_name(NULL), "c"))
withr::with_envvar(
c(LOGNAME = "d", USER = "c", LNAME = "b", USERNAME = "a"),
expect_identical(user_name(NULL), "d"))
withr::with_envvar(
c(LOGNAME = "d", USER = "c", LNAME = "b", USERNAME = "a"),
expect_identical(user(NULL, FALSE, FALSE), "d"))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.