Permalink
Cannot retrieve contributors at this time
54 lines (45 sloc)
1.43 KB
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
auth_success <- tryCatch( | |
drive_auth_testing(), | |
googledrive_auth_internal_error = function(e) NULL | |
) | |
if (!isTRUE(auth_success)) { | |
drive_bullets(c( | |
"!" = "Internal auth failed; calling {.fun drive_deauth}." | |
)) | |
drive_deauth() | |
} | |
skip_if_no_token <- function() { | |
testthat::skip_if_not(drive_has_token(), "No Drive token") | |
} | |
with_mock <- function(..., .parent = parent.frame()) { | |
mockr::with_mock(..., .parent = .parent, .env = "googledrive") | |
} | |
expect_error_free <- function(...) { | |
expect_error(..., regexp = NA) | |
} | |
# usage: | |
# test_file("something.rds") | |
test_file <- function(name) testthat::test_path("test-files", name) | |
defer_drive_rm <- function(..., env = parent.frame()) { | |
withr::defer( | |
with_drive_quiet(drive_rm(...)), | |
envir = env | |
) | |
} | |
# used to replace volatile filepaths and file ids in snapshot tests | |
# may eventually be unnecessary, depending on how this works out: | |
# https://github.com/r-lib/testthat/issues/1345 | |
# @param replace_me Should be a bare symbol that holds a fixed string | |
scrub_filepath <- function(message, replace_me) { | |
x <- ensym(replace_me) | |
gsub(replace_me, paste0("{", as_string(x), "}"), message, fixed = TRUE) | |
} | |
scrub_file_id <- function(message) { | |
gsub("<id: [a-zA-Z0-9_-]+>", "<id: {FILE_ID}>", message, perl = TRUE) | |
} | |
expect_dribble <- function(x) { | |
expect_s3_class(x, "dribble") | |
} | |
expect_bare_tibble <- function(x) { | |
expect_s3_class(x, c("tbl_df", "tbl", "data.frame"), exact = TRUE) | |
} |