Nothing
library(panelView)
data(panelView)
## Helper: run panelview() suppressing the plot device output
pv <- function(...) {
pdf(NULL)
on.exit(dev.off())
panelview(...)
}
# -----------------------------------------------------------------------
# type = "treat"
# -----------------------------------------------------------------------
test_that("type=treat runs with turnout (binary treatment)", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year")))
})
test_that("type=treat runs with capacity (multi-level treatment)", {
expect_no_error(pv(Capacity ~ demo + lnpop + lngdp,
data = capacity, index = c("ccode", "year")))
})
test_that("type=treat: by.timing = TRUE", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
by.timing = TRUE))
})
test_that("type=treat: pre.post = TRUE", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
pre.post = TRUE))
})
test_that("type=treat: collapse.history = TRUE", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
collapse.history = TRUE))
})
test_that("type=treat: D= interface works", {
expect_no_error(pv(D = "policy_edr", data = turnout,
index = c("abb", "year")))
})
test_that("type=treat: show.id subsets units", {
expect_no_error(pv(Capacity ~ demo + lnpop + lngdp,
data = capacity, index = c("ccode", "year"),
show.id = c(1:25)))
})
test_that("type=treat: leave.gap = TRUE with uneven time", {
turnout2 <- turnout[!(turnout$year %in% c("1924", "1928", "1940")), ]
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout2, index = c("abb", "year"),
leave.gap = TRUE))
})
test_that("type=treat: continuous treatment (polity2)", {
expect_no_error(pv(Capacity ~ polity2 + lngdp,
data = capacity, index = c("ccode", "year"),
gridOff = TRUE))
})
# -----------------------------------------------------------------------
# type = "missing" / "miss" (backward-compatible alias)
# -----------------------------------------------------------------------
test_that("type=missing runs on capacity", {
expect_no_error(pv(Capacity ~ 1, data = capacity,
index = c("ccode", "year"), type = "missing"))
})
test_that("type=miss alias works (backward compat)", {
expect_no_error(pv(Capacity ~ 1, data = capacity,
index = c("ccode", "year"), type = "miss"))
})
test_that("type=missing: Y= interface works", {
expect_no_error(pv(Y = "Capacity", data = capacity,
index = c("ccode", "year"), type = "missing"))
})
# -----------------------------------------------------------------------
# type = "outcome"
# -----------------------------------------------------------------------
test_that("type=outcome runs with turnout (continuous)", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "outcome"))
})
test_that("type=outcome: pre.post = FALSE", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "outcome", pre.post = FALSE))
})
test_that("type=outcome: by.group = TRUE", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "outcome", by.group = TRUE))
})
test_that("type=outcome: by.group.side = TRUE", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "outcome", by.group.side = TRUE))
})
test_that("type=outcome: by.cohort = TRUE", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "outcome", by.cohort = TRUE))
})
test_that("type=outcome: ignore.treat (formula Y ~ 1)", {
expect_no_error(pv(turnout ~ 1, data = turnout,
index = c("abb", "year"), type = "outcome"))
})
test_that("type=outcome: discrete outcome", {
expect_no_error(pv(Y ~ D, data = simdata, index = c("id", "time"),
type = "outcome", outcome.type = "discrete"))
})
test_that("type=outcome: discrete outcome by.group = TRUE", {
expect_no_error(pv(Y ~ D, data = simdata, index = c("id", "time"),
type = "outcome", outcome.type = "discrete",
by.group = TRUE))
})
test_that("type=outcome: multi-level treatment (polity2, >5 levels)", {
expect_no_error(pv(Capacity ~ polity2 + lngdp,
data = capacity, index = c("ccode", "year"),
type = "outcome", legendOff = TRUE))
})
test_that("type=outcome: id= subsets units", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "outcome", id = c("AL", "AR", "CT")))
})
test_that("type=raw alias works (backward compat for outcome)", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "raw"))
})
# -----------------------------------------------------------------------
# type = "bivariate" / "bivar" (backward-compatible alias)
# -----------------------------------------------------------------------
test_that("type=bivariate: continuous Y, discrete D, aggregate", {
expect_no_error(pv(turnout ~ policy_edr + policy_mail_in + policy_motor,
data = turnout, index = c("abb", "year"),
type = "bivariate", style = c("c", "b")))
})
test_that("type=bivariate: continuous Y, continuous D, aggregate", {
expect_no_error(pv(lnpop ~ polity2, data = capacity,
index = c("country", "year"), type = "bivariate"))
})
test_that("type=bivariate: discrete Y, discrete D, aggregate", {
expect_no_error(pv(Y ~ D, data = simdata, index = c("id", "time"),
type = "bivariate", outcome.type = "discrete"))
})
test_that("type=bivar alias works (backward compat)", {
expect_no_error(pv(lnpop ~ demo, data = capacity,
index = c("country", "year"), type = "bivar"))
})
test_that("type=bivariate: by.unit = TRUE, continuous Y discrete D", {
expect_no_error(pv(turnout ~ policy_edr,
data = turnout, index = c("abb", "year"),
type = "bivariate", by.unit = TRUE,
show.id = c(1:12)))
})
test_that("type=bivariate: by.unit = TRUE, continuous Y continuous D", {
expect_no_error(pv(lnpop ~ polity2, data = capacity,
index = c("country", "year"),
type = "bivariate", by.unit = TRUE,
show.id = c(1:12)))
})
test_that("type=bivariate: by.unit = TRUE, discrete Y discrete D", {
expect_no_error(pv(Y ~ D, data = simdata, index = c("id", "time"),
type = "bivariate", by.unit = TRUE,
outcome.type = "discrete",
id = unique(simdata$id)[1:12]))
})
# -----------------------------------------------------------------------
# Input validation — errors
# -----------------------------------------------------------------------
test_that("invalid type raises error", {
expect_error(pv(turnout ~ policy_edr, data = turnout,
index = c("abb", "year"), type = "invalid"),
regexp = "should be one of|arg")
})
test_that("missing Y with type=outcome raises error", {
expect_error(pv(data = turnout, index = c("abb", "year"),
type = "outcome"))
})
test_that("invalid leave.gap raises error", {
expect_error(pv(turnout ~ policy_edr, data = turnout,
index = c("abb", "year"), leave.gap = "yes"),
regexp = "leave.gap")
})
test_that("invalid axis.lab.angle raises error", {
expect_error(pv(turnout ~ policy_edr, data = turnout,
index = c("abb", "year"), axis.lab.angle = 120),
regexp = "axis.lab.angle")
})
test_that("type=missing combined with ignore.treat raises error", {
expect_error(pv(Capacity ~ demo, data = capacity,
index = c("ccode", "year"),
type = "missing", ignore.treat = TRUE),
regexp = "missing")
})
test_that("by.cohort outside type=outcome raises error", {
expect_error(pv(turnout ~ policy_edr, data = turnout,
index = c("abb", "year"),
by.cohort = TRUE, type = "treat"),
regexp = "by.cohort")
})
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.