set.seed(123)
A <- sample_correlated_gnp_pair(n = 3, corr = .5, p = .5)$graph1
test_that("naive scheme", {
expect_equal(
as.matrix(center_graph(A, scheme = "naive")),
matrix(c(0,0,1,0,0,0,1,0,0),nrow=3),
ignore_attr = TRUE
)
})
test_that("center scheme", {
expect_equal(
as.matrix(center_graph(A, scheme = "center")),
matrix(c(-1,-1,1,-1,-1,-1,1,-1,-1),nrow=3),
ignore_attr = TRUE
)
})
test_that("scheme equal to 1", {
expect_equal(
as.matrix(center_graph(A, scheme = 1)),
matrix(c(0,0,1,0,0,0,0,0,0),nrow=3),
ignore_attr = TRUE
)
})
test_that("input scheme check", {
expect_error(
center_graph(A, scheme = c(-1, 1, 1)),
"scheme must be either 'center', 'naive', a positive integer, or a pair of scalars.")
expect_error(
center_graph(A, scheme = "other scheme"),
"scheme must be either 'center', 'naive', a positive integer, or a pair of scalars.")
})
test_that("use splr", {
expect_equal(
as.matrix(center_graph(A, scheme = 1, use_splr = FALSE)),
matrix(c(rep(0, 6), 1, 0, 0),byrow = TRUE, nrow=3),
ignore_attr = TRUE
)
expect_equal(
as.matrix(center_graph(A, scheme = c(-1, 1), use_splr = FALSE)),
matrix(c(-1,-1,1,-1,-1,-1,1,-1,-1),nrow=3),
ignore_attr = TRUE
)
})
A <- sample_correlated_gnp_pair(100, .5, .5)$graph1
test_that("use splr", {
expect_equal(
nrow(center_graph(A, scheme = 2, use_splr = FALSE)),
100
)
})
test_that("padding", {
expect_equal(
nrow(pad(A[], 2)),
102
)
expect_equal(
nrow(pad(center_graph(A, scheme = 2, use_splr = TRUE), 2)),
102
)
})
gp_list <- replicate(3, sample_correlated_gnp_pair(20, .3, .5), simplify = FALSE)
A <- lapply(gp_list, function(gp)gp[[1]])
A <- as(A, "matrix_list")
test_that("padding for multi-layer graphs", {
expect_equal(
nrow(pad(A, 2)),
22
)
})
test_that(
"error on center multi-layer graphs",
{
expect_error(
center_graph(A, "center"),
"center_graph does not support matrix lists. Please call on individual elements."
)
}
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.