Nothing
# Pre-processing the table
tab <- basic_table() %>%
split_cols_by("ARM") %>%
split_rows_by("RACE") %>%
split_rows_by("STRATA1") %>%
summarize_row_groups() %>%
analyze_vars("COUNTRY", .stats = "count_fraction") %>%
build_table(DM)
testthat::test_that("keep_rows works in a special case identical to standard pruning", {
row_condition <- !CombinationFunction(all_zero_or_na)
pruning_fun <- keep_rows(row_condition)
testthat::expect_type(pruning_fun, "closure")
result <- prune_table(tab, pruning_fun)
expected <- prune_table(tab)
testthat::expect_identical(result, expected)
})
testthat::test_that("keep_rows prunes everything if condition is always `FALSE`", {
row_condition <- function(table_row) FALSE
pruning_fun <- keep_rows(row_condition)
result <- prune_table(tab, pruning_fun)
expected <- NULL
testthat::expect_identical(result, expected)
})
testthat::test_that("keep_rows keeps everything if condition is always `TRUE`", {
row_condition <- function(table_row) TRUE
pruning_fun <- keep_rows(row_condition)
result <- prune_table(tab, pruning_fun)
expected <- tab
testthat::expect_identical(result, expected)
})
testthat::test_that("keep_content_rows works as expected", {
more_than_twenty <- has_count_in_cols(atleast = 21L, col_names = names(tab))
result <- prune_table(tab, keep_content_rows(more_than_twenty))
result_leaves <- collect_leaves(result)
result_content_rows <- result_leaves[sapply(result_leaves, class) == "ContentRow"]
result_counts <- result_content_rows %>%
lapply(h_row_counts, col_names = names(tab)) %>%
sapply(sum)
testthat::expect_true(all(result_counts > 20))
})
testthat::test_that("has_count_in_cols result works in a special case identical to standard pruning", {
row_condition <- has_count_in_cols(atleast = 1L, col_names = names(tab))
result <- prune_table(tab, keep_rows(row_condition))
expected <- prune_table(tab)
testthat::expect_identical(result, expected)
})
testthat::test_that("has_count_in_cols result performs comparisons correctly", {
sub_tab <- tab[5, ]
res <- testthat::expect_silent(sub_tab)
testthat::expect_snapshot(res)
table_row <- collect_leaves(sub_tab)[[1]]
row_condition <- has_count_in_cols(atleast = 4L, col_names = "A: Drug X")
testthat::expect_false(row_condition(table_row))
row_condition <- has_count_in_cols(atleast = 1L, col_names = "A: Drug X")
testthat::expect_true(row_condition(table_row))
row_condition <- has_count_in_cols(atleast = 5L, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_true(row_condition(table_row))
})
testthat::test_that("has_count_in_any_col result performs comparisons correctly", {
sub_tab <- tab[5, ]
res <- testthat::expect_silent(sub_tab)
testthat::expect_snapshot(res)
table_row <- collect_leaves(sub_tab)[[1]]
row_condition <- has_count_in_any_col(atleast = 2L, col_names = "A: Drug X")
testthat::expect_false(row_condition(table_row))
row_condition <- has_count_in_any_col(atleast = 1L, col_names = "A: Drug X")
testthat::expect_true(row_condition(table_row))
row_condition <- has_count_in_any_col(atleast = 4L, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_true(row_condition(table_row))
})
testthat::test_that("has_fraction_in_cols result works in a special case identical to standard pruning", {
row_condition <- has_fraction_in_cols(atleast = 0.000001, col_names = names(tab))
result <- prune_table(tab, keep_rows(row_condition))
expected <- prune_table(tab)
testthat::expect_identical(result, expected)
})
testthat::test_that("has_fraction_in_cols result performs comparisons correctly", {
sub_tab <- tab[5, ]
res <- testthat::expect_silent(sub_tab)
testthat::expect_snapshot(res)
res <- testthat::expect_silent(col_counts(tab))
testthat::expect_snapshot(res)
table_row <- collect_leaves(sub_tab)[[1]]
row_condition <- has_fraction_in_cols(atleast = 0.01, col_names = "A: Drug X")
testthat::expect_false(row_condition(table_row))
row_condition <- has_fraction_in_cols(atleast = 0.008, col_names = "A: Drug X")
testthat::expect_true(row_condition(table_row))
row_condition <- has_fraction_in_cols(atleast = 0.02, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_true(row_condition(table_row))
})
testthat::test_that("has_fraction_in_any_col result performs comparisons correctly", {
sub_tab <- tab[5, ]
res <- testthat::expect_silent(sub_tab)
testthat::expect_snapshot(res)
table_row <- collect_leaves(sub_tab)[[1]]
row_condition <- has_fraction_in_any_col(atleast = 0.038, col_names = c("A: Drug X", "C: Combination"))
testthat::expect_false(row_condition(table_row))
row_condition <- has_fraction_in_any_col(atleast = 0.036, col_names = c("A: Drug X", "C: Combination"))
testthat::expect_true(row_condition(table_row))
row_condition <- has_fraction_in_any_col(atleast = 0.2, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_true(row_condition(table_row))
})
testthat::test_that("has_fractions_difference result performs comparisons correctly", {
sub_tab <- tab[5, ]
res <- testthat::expect_silent(sub_tab)
testthat::expect_snapshot(res)
table_row <- collect_leaves(sub_tab)[[1]]
row_condition <- has_fractions_difference(atleast = 0.01, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_true(row_condition(table_row))
row_condition <- has_fractions_difference(atleast = 0.5, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_false(row_condition(table_row))
row_condition <- has_fractions_difference(atleast = 0.01, col_names = c("A: Drug X", "C: Combination"))
testthat::expect_false(row_condition(table_row))
})
testthat::test_that("has_counts_difference result performs comparisons correctly", {
sub_tab <- tab[5, ]
res <- testthat::expect_silent(sub_tab)
testthat::expect_snapshot(res)
table_row <- collect_leaves(sub_tab)[[1]]
row_condition <- has_counts_difference(atleast = 3L, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_true(row_condition(table_row))
row_condition <- has_counts_difference(atleast = 4L, col_names = c("A: Drug X", "B: Placebo"))
testthat::expect_false(row_condition(table_row))
row_condition <- has_counts_difference(atleast = 1L, col_names = c("A: Drug X", "C: Combination"))
testthat::expect_false(row_condition(table_row))
})
testthat::test_that("combination of pruning functions works", {
result <- tab %>%
prune_table(
keep_rows(
has_fractions_difference(atleast = 0.1, c("A: Drug X", "C: Combination")) &
has_counts_difference(atleast = 2L, c("B: Placebo", "A: Drug X")) &
has_count_in_cols(atleast = 3L, "A: Drug X")
)
)
res <- testthat::expect_silent(result)
testthat::expect_snapshot(res)
})
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.