context("removeBaseline")
s <- createMassSpectrum(mass=1:20, intensity=rep(10:1, 2))
e <- createMassSpectrum(double(), double())
test_that("removeBaseline throws errors", {
expect_error(removeBaseline(s, method="foobar"),
".*arg.* should be one of .*SNIP.*, .*ConvexHull.*, .*median.*")
})
test_that("removeBaseline shows warnings", {
expect_warning(estimateBaseline(e), "empty")
})
test_that("removeBaseline returns an empty spectrum if input is empty", {
expect_identical(suppressWarnings(removeBaseline(e)), e)
})
test_that("removeBaseline works with ConvexHull", {
expect_equal(removeBaseline(s, method="ConvexHull"),
createMassSpectrum(mass=1:20, intensity=c(rep(0, 10), 9:0)))
})
test_that("removeBaseline works with median", {
## halfWindowSize
expect_error(removeBaseline(s, method="median", halfWindowSize=0),
"too small")
expect_error(removeBaseline(s, method="median"),
"too large")
expect_equal(removeBaseline(s, method="median", halfWindowSize=2),
createMassSpectrum(mass=1:20, intensity=c(rep(0, 8), -1:-2, 2:1,
rep(0, 8))))
})
test_that("removeBaseline works with SNIP", {
expect_equal(removeBaseline(s, iterations=2),
createMassSpectrum(mass=1:20, intensity=c(rep(0, 10), 7.5, 5, 2.5,
rep(0, 7))))
expect_equal(removeBaseline(s, method="SNIP", iterations=2),
createMassSpectrum(mass=1:20, intensity=c(rep(0, 10), 7.5, 5, 2.5,
rep(0, 7))))
})
test_that("removeBaseline works with list of MassSpectrum objects", {
expect_error(removeBaseline(list(x=1, y=1)),
"no list of MALDIquant::MassSpectrum objects")
expect_error(removeBaseline(list(s, createMassPeaks(1, 1)),
"no list of MALDIquant::MassSpectrum objects"))
r <- createMassSpectrum(mass=1:20,
intensity=c(rep(0, 10), 7.5, 5, 2.5, rep(0, 7)))
expect_equal(removeBaseline(list(s, s), iterations=2), list(r, r))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.