tests/testthat/test-detect_mhc.R

testthat::test_that("detect_mhc", {

  # load test data
  alleles <- data.table::rbindlist(
    list(
      system.file("extdata",
        "netMHC_alleles.txt",
        package = "antigen.garnish"
      ) %>%
        data.table::fread(header = FALSE, sep = "\t") %>%
        data.table::setnames("V1", "allele") %>%
        .[, type := "netMHC"],
      system.file("extdata",
        "netMHCpan_alleles.txt",
        package = "antigen.garnish"
      ) %>%
        data.table::fread(header = FALSE, sep = "\t") %>%
        data.table::setnames("V1", "allele") %>%
        .[, type := "netMHCpan"],
      system.file("extdata",
        "mhcflurry_alleles.txt",
        package = "antigen.garnish"
      ) %>%
        data.table::fread(header = FALSE, sep = "\t") %>%
        data.table::setnames("V1", "allele") %>%
        .[, type := "mhcflurry"],
      system.file("extdata",
        "netMHCII_alleles.txt",
        package = "antigen.garnish"
      ) %>%
        data.table::fread(header = FALSE, sep = "\t") %>%
        data.table::setnames("V1", "allele") %>%
        .[, type := "netMHCII"],
      system.file("extdata",
        "netMHCIIpan_alleles.txt",
        package = "antigen.garnish"
      ) %>%
        data.table::fread(header = FALSE, sep = "\t") %>%
        data.table::setnames("V1", "allele") %>%
        .[, type := "netMHCIIpan"]
    )
  )

  dt <- data.table::data.table(
    netMHCIIpan =
      c("A0201", "A0301", "DRB1_0301", "DRB1_1467")
  )

  # run test
  dt[, netMHCIIpan := antigen.garnish:::detect_mhc(netMHCIIpan, alleles)]$netMHCIIpan %>%

    testthat::expect_equal(c(NA, NA, "DRB1_0301", "DRB1_1467"))
})
andrewrech/antigen.garnish documentation built on July 8, 2022, 5:19 p.m.