tests/testthat/test-mappings-integration.R

# Integration tests for mappings resource
# Run with: testthat::test_file("tests/testthat/test-mappings-integration.R")

test_that("get mappings works", {
  skip_if_no_integration_key()
  client <- integration_client()

  result <- client$mappings$get(DIABETES_CONCEPT_ID)

  mappings <- extract_data(result, "mappings")
  expect_true(is.list(mappings))
})

test_that("get mappings to ICD-10 works", {
  skip_if_no_integration_key()
  client <- integration_client()

  result <- client$mappings$get(
    DIABETES_CONCEPT_ID,
    target_vocabularies = "ICD10CM",
    direction = "outgoing"
  )

  mappings <- extract_data(result, "mappings")
  expect_true(is.list(mappings))
})

test_that("get mappings with options works", {
  skip_if_no_integration_key()
  client <- integration_client()

  result <- client$mappings$get(
    DIABETES_CONCEPT_ID,
    include_mapping_quality = TRUE,
    include_context = TRUE,
    page_size = 50
  )

  mappings <- extract_data(result, "mappings")
  expect_true(is.list(mappings))
})

test_that("map concepts batch works", {
  skip_if_no_integration_key()
  client <- integration_client()

  result <- client$mappings$map(
    source_concepts = c(DIABETES_CONCEPT_ID, MI_CONCEPT_ID),
    target_vocabulary = "ICD10CM"
  )

  # Should get some result structure
  mappings <- extract_data(result, "mappings")
  expect_true(is.list(mappings))
})

Try the omophub package in your browser

Any scripts or data that you put into this service are public.

omophub documentation built on Dec. 17, 2025, 5:10 p.m.