diff --git a/inst/hooks/exported/readme-rmd-rendered.R b/inst/hooks/exported/readme-rmd-rendered.R index 06caccd77..1ea63d063 100644 --- a/inst/hooks/exported/readme-rmd-rendered.R +++ b/inst/hooks/exported/readme-rmd-rendered.R @@ -35,7 +35,9 @@ if (file.exists("README.md")) { source_staged <- source_file %in% file_names_staged output_staged <- "README.md" %in% file_names_staged - if (!source_staged || !output_staged) { - rlang::abort(paste(source_file, "and README.md must both be staged.")) + if (sum(source_staged, output_staged) == 1) { + rlang::abort(paste( + source_file, "and README.md must both be either staged or unstaged." + )) } } diff --git a/tests/testthat/test-hook-readme-rmd-rendered.R b/tests/testthat/test-hook-readme-rmd-rendered.R index 5e28cacf9..26eafb2f0 100644 --- a/tests/testthat/test-hook-readme-rmd-rendered.R +++ b/tests/testthat/test-hook-readme-rmd-rendered.R @@ -47,7 +47,7 @@ if (has_git()) { run_test("readme-rmd-rendered", file_name = c("README.Rmd", "README.md"), suffix = "", - std_err = "must both be staged", + std_err = "must both be either staged", std_out = NULL, file_transformer = function(files) { if (length(files) > 1) { @@ -112,7 +112,7 @@ if (has_git()) { run_test("readme-rmd-rendered", file_name = c("README.qmd", "README.md"), suffix = "", - std_err = "must both be staged", + std_err = "must both be either staged", std_out = NULL, file_transformer = function(files) { if (length(files) > 1) {