diff --git a/R/render_report.R b/R/render_report.R
index 1b3e7838f7bf15566fbf5e3087a8c3a96a8bcd1e..005c03fd16ee2f1b9939db93f0cccf7d72909097 100644
--- a/R/render_report.R
+++ b/R/render_report.R
@@ -41,7 +41,7 @@ render_report <- function(input,
   on.exit({
     unlink(file.path(input, c(".Rprofile", "templates")),
            recursive = TRUE)
-  })
+  }, add = TRUE)
   args <- list(
     input = file.path(input, input_index),
     output_format =  output_format,
diff --git a/tests/testthat/test-render_reports.R b/tests/testthat/test-render_reports.R
index 2181586dd06f8d1c6763f477f17fcc11fab3ea41..186428a2f911eddf2085e3fae21b79052e5546f2 100644
--- a/tests/testthat/test-render_reports.R
+++ b/tests/testthat/test-render_reports.R
@@ -1,4 +1,5 @@
 path <- helper_create_fairify()
+
 dfC <-
   expand.grid(
     template = list.dirs(pkg_sys("templates"), full.names = FALSE)[-1],
@@ -19,6 +20,9 @@ mapply(
   lang = dfC$lang,
   MoreArgs = list(path = path)
 )
+
+owd <- getwd()
+
 render_reports(reports_dir = file.path(path, "reports"),
                output_format = "bookdown::gitbook")
 
@@ -44,4 +48,8 @@ render_reports(reports_dir = file.path(path, "reports"),
                output_format = "bookdown::pdf_book")
 expect_index("report.pdf")
 
+test_that("working directory is unchanged #8", {
+  expect_equal(getwd(), owd)
+})
+
 unlink(path, recursive = TRUE)