Nothing
# Tests for R/copyCdmTo.R
# Extra tests only run in test-coverage and local; skip on container CI
skip_on_cran()
skip_if(nzchar(Sys.getenv("CI_TEST_DB")), "Skipping extra tests on container CI")
test_that("copyCdmTo copies cdm to another duckdb connection", {
skip_if_not_installed("duckdb")
con1 <- local_eunomia_con()
con2 <- DBI::dbConnect(duckdb::duckdb(), ":memory:")
on.exit(DBI::dbDisconnect(con2, shutdown = TRUE), add = TRUE)
cdm <- cdmFromCon(con1, cdmSchema = "main", writeSchema = "main", cdmName = "eunomia")
newCdm <- copyCdmTo(con2, cdm, schema = c(schema = "main"), overwrite = TRUE)
expect_s3_class(newCdm, "cdm_reference")
expect_true("person" %in% names(newCdm))
expect_true("observation_period" %in% names(newCdm))
# Check data was actually copied
person_count <- newCdm$person %>% dplyr::count() %>% dplyr::pull(n)
expect_true(person_count > 0)
})
test_that("copyCdmTo preserves cdm name", {
skip_if_not_installed("duckdb")
con1 <- local_eunomia_con()
con2 <- DBI::dbConnect(duckdb::duckdb(), ":memory:")
on.exit(DBI::dbDisconnect(con2, shutdown = TRUE), add = TRUE)
cdm <- cdmFromCon(con1, cdmSchema = "main", writeSchema = "main", cdmName = "TestCDM")
newCdm <- copyCdmTo(con2, cdm, schema = c(schema = "main"), overwrite = TRUE)
expect_equal(omopgenerics::cdmName(newCdm), "TestCDM")
})
test_that("copyCdmTo errors on invalid connection", {
skip_if_not_installed("duckdb")
con1 <- local_eunomia_con()
con2 <- DBI::dbConnect(duckdb::duckdb(), ":memory:")
DBI::dbDisconnect(con2, shutdown = TRUE)
cdm <- cdmFromCon(con1, cdmSchema = "main", writeSchema = "main", cdmName = "eunomia")
expect_error(copyCdmTo(con2, cdm, schema = c(schema = "main")))
})
test_that("copyCdmTo copies cohort tables", {
skip_if_not_installed("duckdb")
con1 <- local_eunomia_con()
con2 <- DBI::dbConnect(duckdb::duckdb(), ":memory:")
on.exit(DBI::dbDisconnect(con2, shutdown = TRUE), add = TRUE)
cdm <- cdmFromCon(con1, cdmSchema = "main", writeSchema = "main", cdmName = "eunomia")
cohort_set <- readCohortSet(system.file("cohorts1", package = "CDMConnector"))
cdm <- generateCohortSet(cdm, cohort_set, name = "my_cohort", overwrite = TRUE)
newCdm <- copyCdmTo(con2, cdm, schema = c(schema = "main"), overwrite = TRUE)
expect_true("my_cohort" %in% names(newCdm))
cohort_data <- newCdm$my_cohort %>% dplyr::collect()
expect_true(nrow(cohort_data) >= 0)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.