Nothing
context("elink")
elinks_mixed <- entrez_link(dbfrom = "pubmed", id = c(19880848, 22883857), db = "all")
elinks_by_id <- entrez_link(dbfrom = "pubmed", id = c(19880848, 22883857), db = "all", by_id=TRUE)
#
#We should maybe download these xmls and test the internal functions
# as these really take some downloading,... especially the lib. links?
message("(this may take some time, have to download many records)")
commands <- c("neighbor_history", "neighbor_score",
"acheck", "ncheck", "lcheck",
"llinks", "llinkslib", "prlinks")
all_the_commands <- lapply(commands, function(cmd_arg)
entrez_link(db="pubmed", dbfrom="pubmed", id=19880848, cmd=cmd_arg)
)
test_that("The record-linking funcitons work",{
expect_that(elinks_mixed, is_a("elink"))
expect_that(names(elinks_mixed$links), is_a("character"))
expect_true(length(elinks_mixed$links$pubmed_mesh_major) > 0)
})
test_that("by_id mode works for elinks", {
expect_that(elinks_by_id, is_a("elink_list"))
expect_that(length(elinks_by_id), equals(2))
expect_that(elinks_by_id[[1]], is_a("elink"))
})
test_that("elink printing behaves", {
expect_output(print(elinks_by_id), "List of 2 elink objects,each containing")
for(ret in all_the_commands){
expect_output(print(ret), "elink object with contents:\\s+\\$[A-Za-z]+")
}
})
test_that("We detect missing ids from elink results",{
expect_warning(
entrez_link(dbfrom="pubmed", db="all", id=c(20203609,2020360999999,20203610), by_id=TRUE)
)
})
test_that("Elink sub-elements can be acessed and printed", {
expect_output(print(all_the_commands[[3]][[1]]),
"elink result with information from \\d+ databases")
expect_output(print(all_the_commands[[8]]$linkouts[[1]]),
"Linkout from [ A-Za-z]+\\s+\\$Url")
})
test_that("URls can be extracted from elink objs", {
for(idx in 6:8){
urls <- linkout_urls(all_the_commands[[idx]])
expect_that(urls, is_a("list"))
expect_that(urls[[1]], is_a("character"))
}
})
test_that("Elink errors on mis-spelled/unknown cmds",{
expect_error(rcheck <- entrez_link(dbfrom = "pubmed",
id = 19880848, db = "all",
cmd='rcheck'))
})
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.