Nothing
context("Jackknife.R")
test_that("Jackknife supports are correct", {
true_tree <- ape::read.tree(text = "((((((A,B),C),D),E),F),out);")
start_tree <- ape::read.tree(text = "(((((A,D),B),E),(C,F)),out);")
dataset <- TreeTools::StringToPhyDat("1100000 1110000 1111000 1111100 1100000 1110000 1111000 1111100 1001000",
1:7, byTaxon = FALSE)
names(dataset) <- c(LETTERS[1:6], "out")
expect_error(Jackknife(unroot(true_tree), dataset))
expect_error(Jackknife(start_tree, dataset, resampleFreq = 0))
expect_error(Jackknife(start_tree, dataset, resampleFreq = 9/10))
suppressWarnings(RNGversion("3.5.0")) # Until we can require R3.6.0
set.seed(0)
strict <- TreeSearch(start_tree, dataset, verbosity = 0)
expect_equal(1, length(unique(list(true_tree), list(start_tree)))) # Right tree found
jackTrees <- Jackknife(strict, dataset, resampleFreq = 4/7, searchIter = 24L,
searchHits = 7L, EdgeSwapper=RootedTBRSwap,
jackIter = 20L, verbosity = 0L)
# Note: one cause of failure could be a change in characters sampled, due to randomness
expect_true(length(unique(jackTrees)) > 2L)
})
test_that("Jackknife ouputs good for node.labels", {
library("TreeTools", quietly = TRUE) # for as.phylo
# jackTrees will usually be generated with Jackknife(), but for simplicity:
jackTrees <- as.phylo(1:100, 8)
tree <- as.phylo(0, 8)
expect_equal(c("", "", "0.13", "0.08", "0.14", "1", "1"),
JackLabels(tree, jackTrees, plot = FALSE))
tree <- RootTree(as.phylo(0, 8), c("t1", "t4"))
expect_equal(c("", "0.08", "0.13", "", "0.14", "1", "1"),
JackLabels(tree, jackTrees, plot = FALSE))
skip_if_not_installed("vdiffr")
vdiffr::expect_doppelganger("plot-jackknife", function() {
expect_equal(as.double(JackLabels(tree, jackTrees, plot = FALSE)[-c(1, 4)]),
unname(JackLabels(tree, jackTrees)))
})
})
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.