diff --git a/tests/testthat.R b/tests/testthat.R index eae16bf..164aec2 100644 --- a/tests/testthat.R +++ b/tests/testthat.R @@ -1,7 +1,4 @@ library(testthat) library(RClickhouse) -serveraddr <- "127.0.0.1" -tblname <- "test" - test_check("RClickhouse") diff --git a/tests/testthat/test-array.R b/tests/testthat/test-array.R index 5752f42..3a93404 100644 --- a/tests/testthat/test-array.R +++ b/tests/testthat/test-array.R @@ -1,36 +1,19 @@ context("array") library(DBI, warn.conflicts=F) -library(dplyr, warn.conflicts=F) -library(dbplyr, warn.conflicts=F) +library(dplyr, warn.conflicts=F) # for data_frame + +source("utils.R") test_that("reading & writing array columns", { - skip_on_cran() - conn <- dbConnect(RClickhouse::clickhouse(), host=serveraddr) - df <- as.data.frame(data_frame(x=list(c(1,3,5),c(1,2)))) - dbWriteTable(conn, tblname, df, overwrite=T) - r <- dbReadTable(conn, tblname) - expect_equal(r, df) - dbDisconnect(conn) + writeReadTest(as.data.frame(data_frame(x=list(c(1,3,5),c(1,2))))) }) #TODO: fix bug in clickhouse-cpp first #test_that("nullable array columns", { -# conn <- dbConnect(RClickhouse::clickhouse(), host="localhost") -# df <- data.frame(x=I(list(c(1,3,5),c(1,2)))) -# attributes(df$x) <- NULL -# dbWriteTable(conn, tblname, df, overwrite=T) -# r <- dbReadTable(conn, tblname) -# expect_equal(r, df) -# dbDisconnect(conn) +# writeReadTest(as.data.frame(data_frame(x=list(c(1,NA,3,5),c(1,2,NA))))) #}) test_that("array columns with empty entries", { - skip_on_cran() - conn <- dbConnect(RClickhouse::clickhouse(), host=serveraddr) - df <- as.data.frame(data_frame(x=list(c(1,2,3),as.numeric(c()),c(4,5)))) - dbWriteTable(conn, tblname, df, overwrite=T) - r <- dbReadTable(conn, tblname) - expect_equal(r, df) - dbDisconnect(conn) + writeReadTest(as.data.frame(data_frame(x=list(c(1,2,3),as.numeric(c()),c(4,5))))) }) diff --git a/tests/testthat/test-regr-15.R b/tests/testthat/test-regr-15.R index 3e663e6..5059a5f 100644 --- a/tests/testthat/test-regr-15.R +++ b/tests/testthat/test-regr-15.R @@ -4,6 +4,8 @@ library(DBI, warn.conflicts=F) library(dplyr, warn.conflicts=F) library(dbplyr, warn.conflicts=F) +source("utils.R") + test_that("correct conversion of logical values in dplyr (#15)", { skip_on_cran() conn <- dbConnect(RClickhouse::clickhouse(), host=serveraddr) diff --git a/tests/testthat/utils.R b/tests/testthat/utils.R new file mode 100644 index 0000000..ce55d5c --- /dev/null +++ b/tests/testthat/utils.R @@ -0,0 +1,11 @@ +serveraddr <- "127.0.0.1" +tblname <- "test" + +writeReadTest <- function(input, result = input) { + skip_on_cran() + conn <- dbConnect(RClickhouse::clickhouse(), host=serveraddr) + dbWriteTable(conn, tblname, input, overwrite=T) + r <- dbReadTable(conn, tblname) + expect_equal(r, result) + dbDisconnect(conn) +}