Nothing
context("avotrex tests")
library(avotrex)
library(ape)
# ##Manual tests on 1000 trees
# r1 <- ape::read.tree(file.choose())
# r2 <- ape::read.tree(file.choose())
# r3 <- ape::read.tree(file.choose())
# rr <- c(r1, r2, r3)
# data(BirdTree_tax)
# data(AvotrexPhylo)
# trees <- AvoPhylo(ctrees = rr,
# avotrex = AvotrexPhylo, PER = 0.2, PER_FIXED = 0.75,
# mindist = 0.1, ord = FALSE,
# tax = BirdTree_tax, Ntree = 1000,
# n.cores = 10, cluster.ips = NULL)
#
# saveRDS(trees, file = "trees_1000_610sp.rds")
#
# all(sapply(trees, is.ultrametric))
# L2 <- sapply(trees,
# function(x) min(x$edge.length))
# all(L2 > 0)
# L3 <- sapply(trees, function(x) length(x$tip.label))
# all(L3 == (9993 - 12 + nrow(AvotrexPhylo)))
#
# #Check ages of fixed age grafting species
# YY <- c("Genyornis_newtoni", "Upupa_antaios",
# "Sylviornis_neocaledoniae", "Aepyornis_maximus",
# "Nannococcyx_psix", "Dromaius_minor",
# "Dromaius_baudinianus", "Chaetoptila_sp_Maui",
# "Psilopterus_sp_Uruguay", "Traversia_lyalli",
# "Xenicus_longipes", "Pachyplichas_yaldwyni",
# "Xenicus_gilviventris", "Pachyornis_geranoides")
#
#
# nn <- sample(1:1000, 50)
# BLT <- sapply(nn, function(z){
# nodes <- sapply(YY,
# function(x,y) which(y==x),
# y=trees[[z]]$tip.label)
#
# setNames(trees[[z]]$edge.length[sapply(nodes,
# function(x,y) which(y==x),y=trees[[z]]$edge[,2])],names(nodes))
# })
#
# round(BLT, 2)
test_that("Main function errors correctly", {
skip_on_cran()
data(BirdTree_trees)
data(BirdTree_tax)
data(AvotrexPhylo)
expect_error(AvoPhylo(ctrees = 5,
avotrex = AvotrexPhylo,
tax = BirdTree_tax))
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = 5,
tax = BirdTree_tax))
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo,
tax = 5))
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo,
PER = 1.2, PER_FIXED = 0.75,
tax = BirdTree_tax))
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo,
PER = 0.2, PER_FIXED = 0.75,
tax = BirdTree_tax, Ntree = 6))
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo,
PER = 0.2, PER_FIXED = 0.75,
tax = BirdTree_tax,
ord = c(FALSE, TRUE),
Ntree = 1, n.cores = 1))
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo,
PER = 0.2, PER_FIXED = 0.75,
tax = BirdTree_tax))
AvotrexPhylo$time_fixed[1] = "A"
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo,
PER = 0.2, PER_FIXED = 0.75,
tax = BirdTree_tax))
AvotrexPhylo$time_fixed[1] = "NA"
AvotrexPhylo2 <- AvotrexPhylo
AvotrexPhylo2$type[1] <- "P"
expect_error(AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo2,
PER = 0.2, PER_FIXED = 0.75,
tax = BirdTree_tax, Ntree = 6))
})
test_that("Output makes sense: 1 input tree", {
skip_on_cran()
trees <- AvoPhylo(ctrees = BirdTree_trees[[1]],
avotrex = AvotrexPhylo,
PER = 0.2, PER_FIXED = 0.75,
tax = BirdTree_tax,
Ntree = 1, n.cores = 1,
cluster.ips = NULL)
expect_true(is.list(trees))
expect_true(is.ultrametric(trees))
expect_false(any(trees[[1]]$edge.length <= 0))
expect_is(trees, c("multiAvophylo",
"multiPhylo"))
expect_true(length(trees) == 1)
Ntip <- length(BirdTree_trees[[1]]$tip.label) +
nrow(AvotrexPhylo) -
(length(which(AvotrexPhylo$type == "AP")))
expect_identical(length(trees[[1]]$tip.label), Ntip)
expect_true(all(AvotrexPhylo$species %in%
trees[[1]]$tip.label))
expect_true(all(BirdTree_trees[[1]]$tip.label %in%
trees[[1]]$tip.label))
expect_true(sum(trees[[1]]$edge.length) >
sum(BirdTree_trees[[1]]$edge.length))
#test_that "time_fixed grafting is working"
YY <- c("Genyornis_newtoni", "Upupa_antaios",
"Sylviornis_neocaledoniae", "Aepyornis_maximus",
"Dromaius_minor",
"Dromaius_baudinianus",
"Xenicus_gilviventris")
nodes <- sapply(YY,function(x,y) which(y==x),
y=trees[[1]]$tip.label)
SNt1 <- setNames(trees[[1]]$edge.length[sapply(nodes,
function(x,y) which(y==x),
y=trees[[1]]$edge[,2])],
names(nodes))
SNt1 <- as.vector(round(SNt1, 2))
expect_identical(SNt1, c(70, 14, 32, 3.31,
0.01, 0.01, 4))
})
test_that("Output makes sense: > 1 input tree", {
skip_on_cran()
trees2 <- AvoPhylo(ctrees = BirdTree_trees,
avotrex = AvotrexPhylo,
PER = 0.4, PER_FIXED = 0.8,
tax = BirdTree_tax,
Ntree = 2, n.cores = 1,
cluster.ips = NULL)
expect_true(is.list(trees2))
z <- sapply(trees2, is.ultrametric)
expect_true(all(z))
expect_false(any(sapply(trees2,
function(x) any(x$edge.length <= 0))))
expect_is(trees2, c("multiAvophylo",
"multiPhylo"))
expect_true(length(trees2) == 2)
Ntip <- length(BirdTree_trees[[2]]$tip.label) +
nrow(AvotrexPhylo) - (length(which(AvotrexPhylo$type == "AP")))
expect_identical(length(trees2[[2]]$tip.label), Ntip)
expect_true(all(AvotrexPhylo$species %in% trees2[[2]]$tip.label))
expect_true(all(BirdTree_trees[[1]]$tip.label %in% trees2[[1]]$tip.label))
expect_true(sum(trees2[[2]]$edge.length) > sum(BirdTree_trees[[2]]$edge.length))
##Checking plotting functions
expect_no_error(plot(trees2[[1]],
avotrex = AvotrexPhylo,
tax = BirdTree_tax,
genus = "Aplonis", tips = "extinct",
type = "cladogram",
tip.color = "red", cex = 0.5))
expect_no_error(plot(trees2[[1]],
avotrex = AvotrexPhylo,
tax = BirdTree_tax,
tips = "none"))
species2 <- c("Anas_itchtucknee", "Anas_sp_VitiLevu",
"Anas_platyrhynchos", "Ara_tricolor")
expect_no_error(plot(trees2[[2]],
avotrex = AvotrexPhylo,
tax = BirdTree_tax,
species = species2, tips = "all_same",
type = "cladogram",
tip.color = "blue", cex = 0.5))
expect_no_error(plot(trees2[1:2],
avotrex = AvotrexPhylo,
tax = BirdTree_tax,
family = "Threskiornithidae",
tips = "extinct",
tip.color = "red",
cex = 0.5))
expect_error(plot(trees2[[2]],
avotrex = AvotrexPhylo,
tax = BirdTree_tax,
species = species2,
tips = "all_diff"))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.