diff --git a/R/getConceptsWithCodeCounts.R b/R/getConceptsWithCodeCounts.R index 55755fc..a94e598 100644 --- a/R/getConceptsWithCodeCounts.R +++ b/R/getConceptsWithCodeCounts.R @@ -53,7 +53,8 @@ getConceptsWithCodeCounts <- function( sql <- SqlRender::translate(sql, targetDialect = connection@dbms) concepts <- DatabaseConnector::dbGetQuery(connection, sql) |> tibble::as_tibble() |> - dplyr::mutate(standard_concept = dplyr::if_else(is.na(standard_concept), FALSE, TRUE)) + dplyr::mutate(standard_concept = dplyr::if_else(is.na(standard_concept), FALSE, TRUE)) |> + dplyr::mutate(concept_id = as.double(concept_id)) return(concepts) } diff --git a/inst/sql/sql_server/createCodeCountsTable.sql b/inst/sql/sql_server/createCodeCountsTable.sql index e59f64f..2af48d6 100644 --- a/inst/sql/sql_server/createCodeCountsTable.sql +++ b/inst/sql/sql_server/createCodeCountsTable.sql @@ -44,6 +44,8 @@ temp_concept_ancestor AS ( SELECT DISTINCT maps_to_concept_id, calendar_year, gender_concept_id, age_decile, record_counts FROM @resultsDatabaseSchema.@stratifiedCodeCountsTable + -- do not take if maps_to_concept_id is a standard concept + WHERE concept_id != maps_to_concept_id ) GROUP BY maps_to_concept_id diff --git a/inst/testdata/config/atlasDev_databasesConfig.yml b/inst/testdata/config/atlasDev_databasesConfig.yml index 1bce8ed..c6804e0 100644 --- a/inst/testdata/config/atlasDev_databasesConfig.yml +++ b/inst/testdata/config/atlasDev_databasesConfig.yml @@ -13,8 +13,8 @@ BQ5k: bigint: integer64 tempEmulationSchema: atlas-development-270609.sandbox cdm: - cdmDatabaseSchema: atlas-development-270609.etl_sam_r12_5k_omop - vocabularyDatabaseSchema: atlas-development-270609.etl_sam_r12_5k_omop + cdmDatabaseSchema: atlas-development-270609.finngen_omop_r13_v3_test + vocabularyDatabaseSchema: atlas-development-270609.finngen_omop_r13_v3_test resultsDatabaseSchema: atlas-development-270609.sandbox cohortTable: cohortDatabaseSchema: atlas-development-270609.sandbox diff --git a/inst/testdata/data/FinnGenR13_countsOnly.sqlite b/inst/testdata/data/FinnGenR13_countsOnly.sqlite index 1487bdf..22ea300 100644 Binary files a/inst/testdata/data/FinnGenR13_countsOnly.sqlite and b/inst/testdata/data/FinnGenR13_countsOnly.sqlite differ diff --git a/inst/testdata/data/createTestingData.R b/inst/testdata/data/createTestingData.R index 2fd761c..d84aa40 100644 --- a/inst/testdata/data/createTestingData.R +++ b/inst/testdata/data/createTestingData.R @@ -7,7 +7,8 @@ source("tests/testthat/setup.R") conceptIds <- c( 317009, # Snomed: Asthma 45596282, # ICD10: Asthma - 21601855 # ATC level 4: C10AA (Statins) + 21601855, # ATC level 4: C10AA (Statins) + 2010001615 # test endpoint ) CDMdbHandler <- HadesExtras_createCDMdbHandlerFromList(test_cohortTableHandlerConfig, loadConnectionChecksLevel = "basicChecks") diff --git a/tests/testmanual/manualtest-timeplotview.R b/tests/testmanual/manualtest-timeplotview.R index f3c6029..f5b2c92 100644 --- a/tests/testmanual/manualtest-timeplotview.R +++ b/tests/testmanual/manualtest-timeplotview.R @@ -17,10 +17,13 @@ conceptId <- 782748 conceptId <- 21602735 +conceptId <- 2010001615 # test endpoint + results <- getCodeCounts( CDMdbHandler, - conceptId = conceptId + conceptId = conceptId, + codeCountsTable = "code_counts" ) diff --git a/tests/testthat/setup.R b/tests/testthat/setup.R index 2f3005b..dce4805 100644 --- a/tests/testthat/setup.R +++ b/tests/testthat/setup.R @@ -90,7 +90,7 @@ if (testingDatabase %in% c("AtlasDevelopment-DBI")) { pathToYalmFile = system.file("testdata", "config", "atlasDev_databasesConfig.yml", package = "ROMOPAPI") ) - test_cohortTableHandlerConfig <- test_databasesConfig[[1]]$cohortTableHandler + test_cohortTableHandlerConfig <- test_databasesConfig[[2]]$cohortTableHandler } diff --git a/tests/testthat/test-createCodeCountsTable.R b/tests/testthat/test-createCodeCountsTable.R index 7702743..17b9b2d 100644 --- a/tests/testthat/test-createCodeCountsTable.R +++ b/tests/testthat/test-createCodeCountsTable.R @@ -25,7 +25,7 @@ test_that("createStratifiedCodeCountsTable works with duplicated counts", { createStratifiedCodeCountsTable(CDMdbHandler, domains = domain, stratifiedCodeCountsTable = stratifiedCodeCountsTable) ) - stratifiedCodeCounts <- CDMdbHandler$connectionHandler$tbl(paste0(resultsDatabaseSchema, ".", stratifiedCodeCountsTable)) + stratifiedCodeCounts <- CDMdbHandler$connectionHandler$tbl(I(paste0(resultsDatabaseSchema, ".", stratifiedCodeCountsTable))) # check that the table was created stratifiedCodeCounts |> @@ -99,7 +99,7 @@ test_that("createCodeCountsTables works", { # - Check if the table was created resultsDatabaseSchema <- CDMdbHandler$resultsDatabaseSchema cdmDatabaseSchema <- CDMdbHandler$cdmDatabaseSchema - code_counts <- CDMdbHandler$connectionHandler$tbl(paste0(resultsDatabaseSchema, ".", codeCountsTable)) + code_counts <- CDMdbHandler$connectionHandler$tbl(I(paste0(resultsDatabaseSchema, ".", codeCountsTable))) # check that the table was created with correct columns code_counts |> diff --git a/tests/testthat/test-getConceptsWithCodeCounts.R b/tests/testthat/test-getConceptsWithCodeCounts.R index 4230141..c968959 100644 --- a/tests/testthat/test-getConceptsWithCodeCounts.R +++ b/tests/testthat/test-getConceptsWithCodeCounts.R @@ -51,7 +51,7 @@ test_that("getConceptsWithCodeCounts works", { # Check that all concept_ids are unique result |> - dplyr::count(concept_id) |> + dplyr::count(concept_id, sort = TRUE) |> dplyr::filter(n > 1) |> nrow() |> expect_equal(0)