Skip to content

Commit e499d8d

Browse files
committed
Additional mdPattern tests
1 parent 2e87305 commit e499d8d

1 file changed

Lines changed: 68 additions & 2 deletions

File tree

tests/testthat/test-smk-mdPatternDS.R

Lines changed: 68 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,80 @@ context("mdPatternDS::smk::setup")
1818
# Tests
1919
#
2020

21-
context("mdPatternDS::smk::sample data.frame")
22-
test_that("mdPatternDS: sample data.frame", {
21+
context("mdPatternDS::smk::sample complete data.frame")
22+
test_that("mdPatternDS: sample complete data.frame", {
2323
x_val <- data.frame(v1 = c(0.0, 1.0, 2.0, 3.0, 4.0), v2 = c(4.0, 3.0, 2.0, 1.0, 0.0))
2424
x <- "x_val"
2525

2626
res <- mdPatternDS(x)
2727

2828
expect_length(res, 3)
29+
expect_length(class(res), 1)
30+
expect_true(all(class(res) %in% c("list")))
31+
expect_length(class(res$pattern), 2)
32+
expect_true(all(class(res$pattern) %in% c("matrix", "array")))
33+
34+
expect_length(colnames(res$pattern), 3)
35+
expect_equal(colnames(res$pattern)[1], "v1")
36+
expect_equal(colnames(res$pattern)[2], "v2")
37+
expect_equal(colnames(res$pattern)[3], "")
38+
expect_length(rownames(res$pattern), 2)
39+
expect_equal(rownames(res$pattern)[1], "5")
40+
expect_equal(rownames(res$pattern)[2], "")
41+
42+
expect_equal(res$pattern[1, 1], 1)
43+
expect_equal(res$pattern[1, 2], 1)
44+
expect_equal(res$pattern[1, 3], 0)
45+
expect_equal(res$pattern[2, 1], 0)
46+
expect_equal(res$pattern[2, 2], 0)
47+
expect_equal(res$pattern[2, 3], 0)
48+
49+
expect_length(class(res$valid), 1)
50+
expect_true(all(class(res$valid) %in% c("logical")))
51+
expect_true(res$valid)
52+
expect_length(class(res$message), 1)
53+
expect_true(all(class(res$message) %in% c("character")))
54+
expect_equal(res$message, "Valid: all pattern counts meet disclosure requirements")
55+
})
56+
57+
context("mdPatternDS::smk::sample incomplete data.frame")
58+
test_that("mdPatternDS: sample incomplete data.frame", {
59+
x_val <- data.frame(v1 = c(0.0, NA, 2.0, 3.0, 4.0), v2 = c(4.0, 3.0, 2.0, 1.0, 0.0))
60+
x <- "x_val"
61+
62+
res <- mdPatternDS(x)
63+
64+
expect_length(res, 3)
65+
expect_length(class(res), 1)
66+
expect_true(all(class(res) %in% c("list")))
67+
expect_length(class(res$pattern), 2)
68+
expect_true(all(class(res$pattern) %in% c("matrix", "array")))
69+
70+
expect_length(colnames(res$pattern), 3)
71+
expect_equal(colnames(res$pattern)[1], "v2")
72+
expect_equal(colnames(res$pattern)[2], "v1")
73+
expect_equal(colnames(res$pattern)[3], "")
74+
expect_length(rownames(res$pattern), 3)
75+
expect_equal(rownames(res$pattern)[1], "4")
76+
expect_equal(rownames(res$pattern)[2], "1")
77+
expect_equal(rownames(res$pattern)[3], "")
78+
79+
expect_equal(res$pattern[1, 1], 1)
80+
expect_equal(res$pattern[1, 2], 1)
81+
expect_equal(res$pattern[1, 3], 0)
82+
expect_equal(res$pattern[2, 1], 1)
83+
expect_equal(res$pattern[2, 2], 0)
84+
expect_equal(res$pattern[2, 3], 1)
85+
expect_equal(res$pattern[3, 1], 0)
86+
expect_equal(res$pattern[3, 2], 1)
87+
expect_equal(res$pattern[3, 3], 1)
88+
89+
expect_length(class(res$valid), 1)
90+
expect_true(all(class(res$valid) %in% c("logical")))
91+
expect_true(res$valid)
92+
expect_length(class(res$message), 1)
93+
expect_true(all(class(res$message) %in% c("character")))
94+
expect_equal(res$message, "Valid: all pattern counts meet disclosure requirements")
2995
})
3096

3197
#

0 commit comments

Comments
 (0)