## Classes in Gviz
test_that("ImageMap works", {
mat <- matrix(1, ncol = 4, dimnames = list("a", NULL))
tags <- list(a = c(a = "tag"))
expect_s4_class(ImageMap(mat, tags = tags), "ImageMap")
expect_identical(ImageMap(mat, tags = tags)@coords, mat)
expect_identical(ImageMap(mat, tags = tags)@tags, tags)
expect_error(ImageMap(matrix(1, ncol = 3), tags = tags), "must be a numeric matrix with 4 column")
expect_error(ImageMap(matrix(1, ncol = 4), tags = tags), "Rownames must be set for the matrix in")
expect_error(ImageMap(mat, tags = list(c(a = "tag1"))), "must be a named list with character vector items.")
expect_error(ImageMap(mat, tags = list(a = c(a = "tag1", b = "tag2"))), "following values in the")
expect_error(ImageMap(mat, tags = list(a = c("tag1"))), "items in the 'tags' list must be named character")
})
test_that("DisplayPars works", {
dp <- DisplayPars(a = 1)
expect_s4_class(dp, "DisplayPars")
expect_identical(dp@pars$a, 1)
expect_error(DisplayPars(1), "All supplied arguments must be named.")
expect_error(DisplayPars(1, b = 2), "All supplied arguments must be named.")
# .updateDp
expect_message(.updateDp(dp), "Note that the behaviour of the")
expect_identical(.updateDp(dp, interactive = FALSE)@pars, list(a = 1))
dp@pars <- new.env()
dp@pars[["a"]] <- 1
expect_identical(.updateDp(dp, interactive = FALSE)@pars, list(a = 1))
expect_message(.updateDp(dp, interactive = FALSE), "The DisplayPars object has been updated")
## getPar
expect_identical(getPar(dp), list(a = 1))
expect_identical(getPar(dp, "a"), 1)
## setPar
expect_identical(setPar(dp, "b", 2, interactive = FALSE)@pars$b, 2)
expect_error(setPar(dp, "b", c(1, 2), interactive = FALSE), "equal length")
## displayPars <-
displayPars(dp) <- list(b = 2)
expect_identical(dp@pars, list(a = 1, b = 2))
## getPar
expect_identical(getPar(dp), list(a = 1, b = 2))
expect_identical(getPar(dp, "a"), 1)
## displayPars
expect_identical(displayPars(dp), list(a = 1, b = 2))
expect_identical(displayPars(dp, "a"), 1)
## as.list
expect_identical(as.list(dp), list(a = 1, b = 2))
})
test_that("IdeogramTrack works", {
ideoTrack <- IdeogramTrack(chromosome = "chrI", genome = "sacCer3", bands = cyto.bands)
expect_s4_class(ideoTrack, "GdObject")
expect_s4_class(ideoTrack, "RangeTrack")
expect_s4_class(ideoTrack, "IdeogramTrack")
})
test_that("GenomeAxisTrack works", {
expect_s4_class(GenomeAxisTrack(), "GdObject")
expect_s4_class(GenomeAxisTrack(), "GenomeAxisTrack")
})
test_that("DataTrack works", {
expect_s4_class(DataTrack(), "GdObject")
expect_s4_class(DataTrack(), "RangeTrack")
expect_s4_class(DataTrack(), "NumericTrack")
expect_s4_class(DataTrack(), "DataTrack")
})
test_that("AnnnotationTrack works", {
expect_s4_class(AnnotationTrack(), "GdObject")
expect_s4_class(AnnotationTrack(), "RangeTrack")
expect_s4_class(AnnotationTrack(), "StackedTrack")
expect_s4_class(AnnotationTrack(), "AnnotationTrack")
expect_error(AnnotationTrack(stacking = "allover"), "following values for 'stacking'")
})
test_that("GeneRegionTrack works", {
expect_s4_class(GeneRegionTrack(), "AnnotationTrack")
expect_s4_class(GeneRegionTrack(), "GeneRegionTrack")
})
test_that("BiomartGeneRegionTrack works", {
## expect_s4_class(BiomartGeneRegionTrack(), "BiomartGeneRegionTrack")
biomartMapping <- list(
gene_id = "ensembl_gene_id", transcript_id = "ensembl_transcript_id", exon_id = "ensembl_exon_id",
start = "exon_chrom_start", end = "exon_chrom_end", rank = "rank", strand = "strand",
symbol = c("external_gene_name", "external_gene_id"), feature = "gene_biotype", chromosome = "chromosome_name",
u5s = "5_utr_start", u5e = "5_utr_end", u3s = "3_utr_start", u3e = "3_utr_end", cdsl = c("cds_length", "cds_start"),
phase = "phase"
)
expect_identical(.getBMFeatureMap(), biomartMapping)
})
test_that("SequenceTrack works", {
expect_s4_class(SequenceTrack(), "GdObject")
expect_s4_class(SequenceTrack(), "SequenceTrack")
expect_s4_class(SequenceTrack(), "SequenceDNAStringSetTrack")
expect_s4_class(RNASequenceTrack(), "SequenceRNAStringSetTrack")
})
test_that("AlignmentsTrack works", {
expect_s4_class(AlignmentsTrack(), "GdObject")
expect_s4_class(AlignmentsTrack(), "RangeTrack")
expect_s4_class(AlignmentsTrack(), "StackedTrack")
expect_s4_class(AlignmentsTrack(), "AlignmentsTrack")
expect_s4_class(AlignmentsTrack(showIndels = TRUE), "AlignmentsTrack")
expect_s4_class(AlignmentsTrack(bamfile), "ReferenceTrack")
expect_s4_class(AlignmentsTrack(bamfile), "AlignmentsTrack")
})
test_that("CustomTrack works", {
expect_s4_class(CustomTrack(), "GdObject")
expect_s4_class(CustomTrack(), "CustomTrack")
})
test_that("HighlightTrack works", {
expect_s4_class(HighlightTrack(), "GdObject")
expect_s4_class(HighlightTrack(), "RangeTrack")
expect_s4_class(HighlightTrack(), "HighlightTrack")
expect_true(is(HighlightTrack()@range, "GRanges"))
expect_error(
HighlightTrack(c(annoTrack, geneModels)),
"All elements in 'trackList' must inherit from 'GdObject'"
)
displayPars(highTrack) <- list(col = "black")
expect_identical(displayPars(highTrack)$col, "black")
displayPars(highTrack, recursive = TRUE) <- list(col = "red")
expect_identical(vapply(highTrack@trackList, function(x) displayPars(x)$col,
FUN.VALUE = character(1)
), "red")
})
test_that("OverlayTrack works", {
expect_s4_class(OverlayTrack(), "GdObject")
expect_s4_class(OverlayTrack(), "OverlayTrack")
expect_true(is.list(OverlayTrack(annoTrack)@trackList))
expect_error(
OverlayTrack(c(annoTrack, geneModels)),
"All elements in 'trackList' must inherit from 'GdObject'"
)
displayPars(overTrack) <- list(col = "black")
expect_identical(displayPars(overTrack)$col, "black")
displayPars(overTrack, recursive = TRUE) <- list(col = "red")
expect_identical(vapply(overTrack@trackList, function(x) displayPars(x)$col,
FUN.VALUE = character(1)
), c("red", "red"))
})
test_that("DetailsAnnotationTrack works", {
expect_s4_class(DetailsAnnotationTrack(), "GdObject")
expect_s4_class(DetailsAnnotationTrack(), "StackedTrack")
expect_s4_class(DetailsAnnotationTrack(), "RangeTrack")
expect_s4_class(DetailsAnnotationTrack(), "AnnotationTrack")
expect_s4_class(detTrack, "AnnotationTrack")
expect_identical(detTrack@selectFun, selFun)
expect_identical(detTrack@fun, detFun)
})
test_that("md5 hash for BiomartTrack works", {
data("biomTrack")
expect_identical(.bmGuid(biomTrack), "b0cbf1bb0e4e5a1936fe68e36da5f210")
})
test_that("interaction with biomart works", {
check_biomart()
biomartTrack <- BiomartGeneRegionTrack(
genome = "hg38", chromosome = "chr7",
start = 20e6, end = 21e6, name = "ENSEMBL"
)
expect_s4_class(biomartTrack, "GdObject")
expect_s4_class(biomartTrack, "StackedTrack")
expect_s4_class(biomartTrack, "RangeTrack")
expect_s4_class(biomartTrack, "AnnotationTrack")
expect_s4_class(biomartTrack, "GeneRegionTrack")
expect_s4_class(biomartTrack, "BiomartGeneRegionTrack")
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.