From 9f0d412d9541b7060953d0920ab25bf840321928 Mon Sep 17 00:00:00 2001 From: Bill Denney Date: Thu, 15 Dec 2022 10:50:29 -0500 Subject: [PATCH 1/3] Add test for #376 --- tests/testthat/test-read-xml.R | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/testthat/test-read-xml.R b/tests/testthat/test-read-xml.R index 60d625eb..4ee42542 100644 --- a/tests/testthat/test-read-xml.R +++ b/tests/testthat/test-read-xml.R @@ -106,3 +106,14 @@ test_that("read_xml and read_html fail with > 1 input", { expect_error(read_xml(c("foo", "bar")), "`x` must be a string of length 1") expect_error(read_html(c("foo", "bar")), "`x` must be a string of length 1") }) + +test_that("read_xml with an invalid file allows deletion of the file (#376)", { + tmp <- tempfile(fileext = ".xml") + on.exit(unlink(tmp)) + writeLines("", con = tmp) + + expect_error( + read_xml(tmp) + ) + expect_true(file.remove(tmp)) +}) From d429239f793d5dbc494ea43f0a42f99754a7bbe4 Mon Sep 17 00:00:00 2001 From: Hadley Wickham Date: Mon, 30 Oct 2023 13:36:31 -0500 Subject: [PATCH 2/3] Refactor test --- tests/testthat/test-xml_parse.R | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/tests/testthat/test-xml_parse.R b/tests/testthat/test-xml_parse.R index b59a4a14..7e9ef278 100644 --- a/tests/testthat/test-xml_parse.R +++ b/tests/testthat/test-xml_parse.R @@ -112,12 +112,10 @@ test_that("read_xml and read_html fail with > 1 input", { }) test_that("read_xml with an invalid file allows deletion of the file (#376)", { - tmp <- tempfile(fileext = ".xml") - on.exit(unlink(tmp)) - writeLines("", con = tmp) + tmp <- withr::local_tempfile(lines = "") - expect_error( - read_xml(tmp) - ) + n_cons <- nrow(showConnections()) + try(read_xml(tmp), silent = TRUE) + expect_equal(nrow(showConnections()), n_cons) expect_true(file.remove(tmp)) }) From 0aa9940e7b45390e415bc6417a2afb7377358a38 Mon Sep 17 00:00:00 2001 From: Hadley Wickham Date: Mon, 30 Oct 2023 13:43:09 -0500 Subject: [PATCH 3/3] Ooops --- DESCRIPTION | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index bbe806ac..0515d78c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -28,7 +28,8 @@ Suggests: magrittr, mockery, rmarkdown, - testthat (>= 3.0.0) + testthat (>= 3.0.0), + withr VignetteBuilder: knitr Config/Needs/website: tidyverse/tidytemplate