tests/testthat/test_assignAlleles.R

#' Copyright(c) 2017-2024 R. Mark Sharp
#' This file is part of nprcgenekeepr
context("assignAlleles")

alleles <- list(alleles = list(), counter = 1L)
test_that("assignAlleles assigns alleles correctly", {
  expect_error(assignAlleles(alleles,
    parentType = "sire", parent = "s1",
    id = "o1", n = 4L
  ))
  alleles_2 <- assignAlleles(alleles,
    parentType = "sire", parent = NA,
    id = "o1", n = 4L
  )
  expect_identical(alleles_2$alleles$o1$sire, rep(1L, 4L))
  alleles <- alleles_2
  alleles_3 <- assignAlleles(alleles,
    parentType = "dam", parent = NA,
    id = "o1", n = 4L
  )
  expect_identical(alleles_3$alleles$o1$dam, rep(2L, 4L))
  alleles <- alleles_3
  alleles_4 <- assignAlleles(alleles,
    parentType = "sire", parent = NA,
    id = "o2", n = 4L
  )
  expect_identical(alleles_4$alleles$o2$sire, rep(3L, 4L))
  alleles <- alleles_4
  alleles_5 <- assignAlleles(alleles,
    parentType = "dam", parent = NA,
    id = "o2", n = 4L
  )
  expect_identical(alleles_5$alleles$o2$dam, rep(4L, 4L))
  alleles <- alleles_5
  alleles_6 <- assignAlleles(alleles,
    parentType = "dam", parent = "o1",
    id = "o3", n = 4L
  )
  expect_true(all(alleles_6$alleles$o3$dam %in% c(1L, 2L)))
  alleles <- alleles_6
  alleles_7 <- assignAlleles(alleles,
    parentType = "dam", parent = "o2",
    id = "o3", n = 4L
  )
  expect_true(all(alleles_6$alleles$o3$sire %in% c(3L, 4L)))
})

Try the nprcgenekeepr package in your browser

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

nprcgenekeepr documentation built on June 8, 2025, 10:55 a.m.