tests/testthat/test-checks.R

# position_check ----

test_that("position_check no error positive numeric integer-ish", {
  expect_invisible(position_check(c(1L)))
  expect_invisible(position_check(c(1L, 3L, 9L)))
  expect_invisible(position_check(c(1)))
  expect_invisible(position_check(c(5.0)))
})

test_that("position_check non-numeric is an error", {
  expect_error(position_check("character"))
  expect_error(position_check(list()))
  expect_error(position_check(TRUE))
  expect_error(position_check(FALSE))
  expect_error(position_check(NULL))
})

test_that("position_check error decimal double", {
  expect_error(position_check(c(1.5)))
  expect_error(position_check(c(5, 1.5)))
})

test_that("position_check NA scalar is not an error", {
  expect_invisible(position_check(NA))
})

test_that("position_check multiple NA is not an error", {
  expect_invisible(position_check(c(NA, NA)))
})

test_that("position_check error < 1", {
  expect_error(position_check(c(0L)))
  expect_error(position_check(c(-1L)))
  expect_error(position_check(c(0.5)))
})

# ptm_check ----

test_that("ptm_check no error", {
  expect_invisible(ptm_check(1L, "test"))
  expect_invisible(ptm_check(c(1, 2, 3), "test"))
})


test_that("ptm_check error name length > 1", {
  expect_error(ptm_check(1L, c("test", "test")))
})

test_that("ptm_check error name non character", {
  expect_error(ptm_check(1L, c(1)))
  expect_error(ptm_check(1L, c(1.5)))
  expect_error(ptm_check(1L, NULL))
  expect_error(ptm_check(1L, TRUE))
  expect_error(ptm_check(1L, FALSE))
  expect_error(ptm_check(1L, list()))
})


# ptm2_check ----




# value_position check ----


# peptide_check ----
test_that("ptm_peptide no error", {
  expect_invisible(peptide_check(character(), integer(), integer(), list()))
  expect_invisible(peptide_check("LVLVLV", 10L, 1L, list(peptr_ptm_list(peptr_ptm(1L, "Phophorylation")))))
  expect_invisible(peptide_check(c("LVLMKL", "LLNML"), c(10L, 5L), c(1L, 1L), list(peptr_ptm_list(peptr_ptm(1L, "Phophorylation")), peptr_ptm_list(peptr_ptm(1L, "Phophorylation")))))
})

test_that("ptm_peptide wrong types", {
  expect_error(peptide_check(5.0, 1L, 1L, list()))
  expect_error(peptide_check(TRUE, 1L, 1L, list()))
  expect_error(peptide_check(list(), 1L, 1L, list()))
  expect_error(peptide_check("LLKM", "1", 1L, list()))
  expect_error(peptide_check("LLKM", "1", TRUE, list()))
  expect_error(peptide_check("LLKM", "1", list(), list()))
  expect_error(peptide_check("LLKM", 1L, "1", list()))
  expect_error(peptide_check("LLKM", 1L, TRUE, list()))
  expect_error(peptide_check("LLKM", 1L, list(), list()))
  expect_error(peptide_check("LLKM", 1L, list(), 1L))
})


test_that("ptm_peptide sequence with non amino acids characters", {
  expect_error(peptide_check("ZZZ", 10L, 1L, list(peptr_ptm(1L))))
})

test_that("ptm_peptide wrong ptms", {
  expect_error(peptide_check("LLL", 10L, 1L, list("error")))
  expect_error(peptide_check("LLL", 10L, 1L, list(list())))
  expect_error(peptide_check("LLL", 10L, 1L, list(list(), list())))
})
jeanmanguy/peptr documentation built on Feb. 3, 2020, 12:04 a.m.