53 lines
1.9 KiB
R
53 lines
1.9 KiB
R
# To run tests for one dbms and one cdmVersion use the variables below
|
|
# dbms <- "postgresql"; cdmVersion <- "5.4"
|
|
|
|
# testDatabases <- c("oracle", "postgresql", "sql server", "redshift")
|
|
testDatabases <- c("redshift")
|
|
|
|
test_that("getConnectionDetails works", {
|
|
for(dbms in testDatabases) {
|
|
expect_s3_class(getConnectionDetails(dbms), "connectionDetails")
|
|
}
|
|
})
|
|
|
|
test_that("getSchema works", {
|
|
for(dbms in testDatabases) {
|
|
expect_type(getSchema(dbms), "character")
|
|
}
|
|
})
|
|
|
|
for(dbms in testDatabases) {
|
|
connectionDetails <- getConnectionDetails(dbms)
|
|
cdmDatabaseSchema <- getSchema(dbms)
|
|
|
|
test_that(paste("Can connect to", dbms), {
|
|
con <- connect(connectionDetails)
|
|
expect_s3_class(con, "DatabaseConnectorJdbcConnection")
|
|
expect_error(disconnect(con), NA)
|
|
})
|
|
|
|
|
|
# for(cdmVersion in listSupportedVersions()) {
|
|
# test_that(paste("DDL", cdmVersion, "runs on", dbms), {
|
|
# dropAllTablesFromSchema(connectionDetails, cdmDatabaseSchema)
|
|
# tables <- listTablesInSchema(connectionDetails, cdmDatabaseSchema)
|
|
# expect_equal(tables, character(0))
|
|
#
|
|
# executeDdl(connectionDetails,
|
|
# cdmVersion = cdmVersion,
|
|
# cdmDatabaseSchema = cdmDatabaseSchema,
|
|
# executeDdl = TRUE,
|
|
# executePrimaryKey = TRUE,
|
|
# executeForeignKey = FALSE)
|
|
#
|
|
# tables <- listTablesInSchema(connectionDetails, cdmDatabaseSchema)
|
|
# cdmTableCsvLoc <- system.file(file.path("csv", paste0("OMOP_CDMv", cdmVersion, "_Table_Level.csv")), package = "CommonDataModel", mustWork = TRUE)
|
|
# tableSpecs <- read.csv(cdmTableCsvLoc, stringsAsFactors = FALSE)$cdmTableName
|
|
#
|
|
# # check that the tables in the database match the tables in the specification
|
|
# expect_equal(sort(tolower(tables)), sort(tolower(tableSpecs)))
|
|
# dropAllTablesFromSchema(connectionDetails, cdmDatabaseSchema)
|
|
# })
|
|
# }
|
|
}
|