From 70ce98f1e8a3817064b96695fa6e8eb72d015498 Mon Sep 17 00:00:00 2001 From: egillax Date: Sun, 15 Oct 2023 14:20:02 +0200 Subject: [PATCH 1/2] add exception of pathtoDriver check for duckdb --- R/Drivers.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/Drivers.R b/R/Drivers.R index 485407a9..510a79a1 100644 --- a/R/Drivers.R +++ b/R/Drivers.R @@ -162,7 +162,7 @@ getJbcDriverSingleton <- function(driverClass = "", classPath = "") { } checkPathToDriver <- function(pathToDriver, dbms) { - if (!is.null(dbms) && dbms %in% c("sqlite", "sqlite extended")) { + if (!is.null(dbms) && dbms %in% c("sqlite", "sqlite extended", "duckdb")) { return() } if (pathToDriver == "") { From 57dbb721beacdd57af252884e895c5ebeed60439 Mon Sep 17 00:00:00 2001 From: egillax Date: Sun, 15 Oct 2023 14:21:21 +0200 Subject: [PATCH 2/2] add test for duckdb without specifying pathToDriver or JAR folder --- tests/testthat/test-duckdb.R | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/testthat/test-duckdb.R b/tests/testthat/test-duckdb.R index 5d958002..62dd602c 100644 --- a/tests/testthat/test-duckdb.R +++ b/tests/testthat/test-duckdb.R @@ -9,6 +9,20 @@ test_that("Open and close duckdb connection", { unlink(databaseFile) }) +test_that("Open and close duckdb without DATABASECONNECTOR_JAR_FOLDER", { + withr::with_envvar( + new=c("DATABASECONNECTOR_JAR_FOLDER"=""), + { + databaseFile <- tempfile() + connection <- DatabaseConnector::connect(dbms = "duckdb", server = databaseFile) + expect_s4_class(connection, "DatabaseConnectorDbiConnection") + disconnect(connection) + unlink(databaseFile) + } + + ) +}) + test_that("Insert and retrieve dates from duckdb", { databaseFile <- tempfile() connection <- DatabaseConnector::connect(dbms = "duckdb", server = databaseFile)