Nothing
test_that("bind_into_vpts() returns error on incorrect parameters", {
# non vpts inputs
expect_error(
bind_into_vpts(
example_vpts[2:5],
example_vpts[1],
"not_a_vpts",
example_vpts[6:9]
),
regexp = "requires vpts objects as input",
fixed = TRUE
)
# non vp objects input
expect_error(
bind_into_vpts.vp(
example_vpts[2:5],
example_vpts[1]
),
regexp = "requires vp objects as input",
fixed = TRUE
)
# unexpected objects in list
expect_error(
suppressWarnings(
bind_into_vpts(list("a", example_vpts[2:5]))
),
regexp = "requires list of vp objects as input",
fixed = TRUE
)
# must have same radar
example_vpts_radar_modified <- example_vpts
example_vpts_radar_modified$radar <- "seang"
expect_error(
bind_into_vpts(example_vpts, example_vpts_radar_modified),
regexp = "Vertical profiles are not from a single radar",
fixed = TRUE
)
# different quantities in vertical profiles
example_vpts_dbzh_delete <- example_vpts
example_vpts_dbzh_delete$data$DBZH <- NULL
expect_error(
bind_into_vpts(example_vpts_dbzh_delete, example_vpts),
regexp = "Vertical profiles have different quantities",
fixed = TRUE
)
# Vertical profiles with different altitude layer widths
example_vpts_interval_edit <- example_vpts
example_vpts_interval_edit$attributes$where$interval <- 189
expect_error(
bind_into_vpts(example_vpts_interval_edit, example_vpts),
regexp = "Vertical profiles with different altitude layer widths",
fixed = TRUE
)
# Vertical profiles with different numbers of altitude layers
example_vpts_layer_edit <- example_vpts
example_vpts_layer_edit$attributes$where$levels <- 23
expect_error(
bind_into_vpts(example_vpts_layer_edit, example_vpts),
regexp = "Vertical profiles with different numbers of altitude layers",
fixed = TRUE
)
# vp: Vertical profiles of radar contain different quantities.
example_vp_dbzh_delete <- example_vp
example_vp_dbzh_delete$data$DBZH <- NULL
expect_error(
bind_into_vpts(list(example_vp_dbzh_delete, example_vp)),
regexp = "Vertical profiles of radar seang contain different quantities.",
fixed = TRUE
)
# vp: Vertical profiles with different altitude layer widths
example_vp_interval_edit <- example_vp
example_vp_interval_edit$attributes$where$interval <- 189
expect_error(
bind_into_vpts(list(example_vp_interval_edit, example_vp)),
regexp = "Vertical profiles with different altitude layer widths",
fixed = TRUE
)
# vp: Vertical profiles with different numbers of altitude layers
example_vp_layer_edit <- example_vp
example_vp_layer_edit$attributes$where$levels <- 23
expect_error(
bind_into_vpts(list(example_vp_layer_edit, example_vp)),
regexp = "Vertical profiles with different numbers of altitude layers",
fixed = TRUE
)
})
test_that("bind_into_vpts() warns for multiple different radars", {
expect_warning(
bind_into_vpts(
example_vp,
example_vpts[1]
),
regexp = "Vertical profiles are not from a single radar.",
fixed = TRUE
)
})
test_that("vpts based on vp, multiple vp or vector of vp", {
data(example_vpts)
expect_s3_class(bind_into_vpts(example_vpts[1]), "vpts")
expect_s3_class(bind_into_vpts(example_vpts[1], example_vpts[2]), "vpts")
expect_s3_class(bind_into_vpts(c(example_vpts[1], example_vpts[2], example_vpts[3])), "vpts")
})
test_that("vpts based on vpts or multiple vpts", {
data(example_vpts)
expect_s3_class(bind_into_vpts(example_vpts[1:10]), "vpts")
expect_s3_class(bind_into_vpts(example_vpts[1:10], example_vpts[11:20]), "vpts")
})
test_that("vp with different heights", {
data(example_vp)
lower <- example_vp
lower$data <- lower$data[1:20, ]
lower$attributes$where$levels = 20
higher <- example_vp
higher$data <- higher$data[3:25, ]
lower$attributes$where$levels = 23
expect_s3_class(bind_into_vpts(example_vp, lower), "vpts")
expect_s3_class(bind_into_vpts(list(example_vp, higher)), "vpts")
expect_s3_class(bind_into_vpts(example_vp, higher), "vpts")
vpts <- bind_into_vpts(lower, higher)
expect_s3_class(vpts, "vpts")
expect_equal(vpts$attributes$where$levels, example_vpts$attributes$where$levels)
higher$data$height <- higher$data$height + 1
expect_error(bind_into_vpts(example_vp, higher),
regexp = "Not all data has the same alignment of altitude bins",
fixed = TRUE)
})
test_that("vpts with different heights", {
data(example_vpts)
lower <- example_vpts
lower$height <- lower$height[1:20]
lower$attributes$where$levels = 20
lower$data <- lapply(lower$data, head, 20)
vpts <- bind_into_vpts(lower, example_vpts)
expect_s3_class(vpts,'vpts')
expect_equal(vpts$attributes$where$levels, example_vpts$attributes$where$levels)
})
test_that("vplist_to_vpts() returns error for unknown radar", {
expect_error(
vplist_to_vpts(list(example_vp,example_vp), radar = "not_a_radar"),
regexp = "no profiles found for radar not_a_radar",
fixed = TRUE
)
})
test_that("vplist_to_vpts() returns vpts object", {
expect_type(
vplist_to_vpts(list(example_vp, example_vp), radar = "seang"),
"list")
expect_s3_class(
vplist_to_vpts(list(example_vp, example_vp), radar = "seang"),
"vpts"
)
})
test_that("combined_heights() returns error on incorrect parameters", {
expect_error(
combined_heights("a"),
regexp = "x is not a list",
fixed = TRUE
)
expect_error(
combined_heights(as.list(example_vpts$height)),
regexp = "Not all data has the same size of altitude bins",
fixed = TRUE
)
})
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.