# Copyright 2019 Robert Carnell
context("test-create_oalhs")
test_that("create_oalhs works", {
oalhs <- create_oalhs(9, 4, TRUE, FALSE)
expect_true(checkLatinHypercube(oalhs))
expect_equal(nrow(oalhs), 9)
expect_equal(ncol(oalhs), 4)
# ask for an achievable design
oalhs <- create_oalhs(4, 2, TRUE, FALSE)
expect_true(checkLatinHypercube(oalhs))
expect_equal(nrow(oalhs), 4)
expect_equal(ncol(oalhs), 2)
# ask for a design that needs more rows
oalhs <- create_oalhs(20, 3, TRUE, FALSE)
expect_true(checkLatinHypercube(oalhs))
expect_equal(nrow(oalhs), 25)
expect_equal(ncol(oalhs), 3)
# ask for a design but ask for less rows
oalhs <- create_oalhs(20, 3, FALSE, FALSE)
expect_true(checkLatinHypercube(oalhs))
expect_equal(nrow(oalhs), 18)
expect_equal(ncol(oalhs), 3)
oalhs <- create_oalhs(20, 10, TRUE, FALSE)
expect_true(checkLatinHypercube(oalhs))
expect_equal(nrow(oalhs), 54)
expect_equal(ncol(oalhs), 10)
# check repeatability
set.seed(1001)
X <- create_oalhs(9, 4, TRUE, FALSE)
set.seed(1001)
Y <- create_oalhs(9, 4, TRUE, FALSE)
expect_true(all(X == Y))
expect_error(.Call("create_oalhs", 3, 4L, FALSE, FALSE))
expect_error(.Call("create_oalhs", 3L, 4L, 5, FALSE))
expect_error(.Call("create_oalhs", 3L, as.integer(NA), FALSE, FALSE))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.