test_that("ewspec.trend executes", {
skip_on_cran()
x <- stats::rnorm(256)
x.s <- ewspec.trend(x)
expect_equal(class(x.s), "list")
})
test_that("ewspec.trend executes using different an and gen wavelets", {
skip_on_cran()
x <- stats::rnorm(256)
x.s <- ewspec.trend(x, an.filter.number = 4, gen.filter.number = 5)
expect_equal(class(x.s), "list")
})
test_that("ewspec.trend executes with supplied matrix", {
skip_on_cran()
x <- stats::rnorm(256)
A <- Cmat.calc(J = 8)
x.s <- ewspec.trend(x, supply.inv.mat = TRUE, inv.mat = solve(A))
expect_equal(class(x.s), "list")
})
test_that("Supplied matrix is square", {
skip_on_cran()
x <- stats::rnorm(256)
expect_error(
ewspec.trend(x, supply.inv.mat = TRUE, inv.mat = matrix(0, 7, 8)),
"Supplied inverse matrix must be square"
)
})
test_that("Supplied matrix is large enough", {
skip_on_cran()
x <- stats::rnorm(256)
A <- Cmat.calc(J = 4)
expect_error(
ewspec.trend(x, supply.inv.mat = TRUE, inv.mat = solve(A), max.scale = 6),
"Dimension of supplied inverse matrix must be larger than max.scale"
)
})
test_that("ewspec.trend warns for boundary handling on non-dyadic data", {
skip_on_cran()
x <- stats::rnorm(200)
expect_warning(
ewspec.trend(x),
"Data length is not power of two. Boundary correction has been applied."
)
})
test_that("error for NA data", {
x <- rep(NA, 64)
expect_error(
ewspec.trend(x),
"Data contains mising values."
)
})
test_that("data is numeric", {
x <- c("1", "2")
expect_error(
ewspec.trend(x),
"Data is not numeric"
)
})
test_that("binwidth is integer", {
expect_error(
ewspec.trend(rnorm(64), binwidth = 9.7),
"binwidth parameter must be an integer."
)
})
test_that("max.scale is integer", {
expect_error(
ewspec.trend(rnorm(64), max.scale = 3.7),
"max.scale parameter must be an integer."
)
})
test_that("max.scale isn't too large", {
expect_warning(
ewspec.trend(rnorm(64), max.scale = 9),
"max.scale parameter is outside valid range. Resetting to default value."
)
})
test_that("ewspec.trend executes with median smoothing", {
skip_on_cran()
x <- stats::rnorm(256)
x.s <- ewspec.trend(x, smooth.type = "median")
expect_equal(class(x.s), "list")
})
test_that("ewspec.trend executes with epan smoothing", {
skip_on_cran()
x <- stats::rnorm(256)
x.s <- ewspec.trend(x, smooth.type = "epan")
expect_equal(class(x.s), "list")
})
test_that("ewspec.trend recognises smoothing", {
skip_on_cran()
x <- stats::rnorm(256)
expect_error(
ewspec.trend(x, smooth.type = "bartlett"),
"Smoothing type must be one of 'mean', 'median', or 'epan'."
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.