Check if a path is suited for creating an output file
Source:R/checkPathForOutput.R
checkPathForOutput.RdCheck if a file path can be used safely to create a file and write to it.
This is checked:
Does
dirname(x)exist?Does no file under path
xexist?Is
dirname(x)writable?
Paths are relative to the current working directory.
Usage
checkPathForOutput(x, overwrite = FALSE, extension = NULL)
check_path_for_output(x, overwrite = FALSE, extension = NULL)
assertPathForOutput(
x,
overwrite = FALSE,
extension = NULL,
.var.name = vname(x),
add = NULL
)
assert_path_for_output(
x,
overwrite = FALSE,
extension = NULL,
.var.name = vname(x),
add = NULL
)
testPathForOutput(x, overwrite = FALSE, extension = NULL)
test_path_for_output(x, overwrite = FALSE, extension = NULL)
expect_path_for_output(
x,
overwrite = FALSE,
extension = NULL,
info = NULL,
label = vname(x)
)Arguments
- x
[
any]
Object to check.- overwrite
[
logical(1)]
IfTRUE, an existing file in place is allowed if it it is both readable and writable. Default isFALSE.- extension
[
character(1)]
Extension of the file, e.g. “txt” or “tar.gz”.- .var.name
[
character(1)]
Name of the checked object to print in assertions. Defaults to the heuristic implemented invname.- add
[
AssertCollection]
Collection to store assertion messages. SeeAssertCollection.- info
[
character(1)]
Extra information to be included in the message for the testthat reporter. Seeexpect_that.- label
[
character(1)]
Name of the checked object to print in messages. Defaults to the heuristic implemented invname.
Value
Depending on the function prefix:
If the check is successful, the functions
assertPathForOutput/assert_path_for_output return
x invisibly, whereas
checkPathForOutput/check_path_for_output and
testPathForOutput/test_path_for_output return
TRUE.
If the check is not successful,
assertPathForOutput/assert_path_for_output
throws an error message,
testPathForOutput/test_path_for_output
returns FALSE,
and checkPathForOutput/check_path_for_output
return a string with the error message.
The function expect_path_for_output always returns an
expectation.
See also
Other filesystem:
checkAccess(),
checkDirectoryExists(),
checkFileExists()