source(file.path("_helper", "init.R"))
expr.1 <- expression(1 + 1, b <- 5, matrix(integer(), nrow = b,
ncol = b))
expr.2 <- {
1 + 1
b <- 5
matrix(integer(), nrow = b, ncol = b)
}
expr.3 <- quote(expression(1 + 1, b <- 5, matrix(integer(), nrow = b,
ncol = b)))
expr.4 <- quote({
1 + 1
b <- 5
matrix(integer(), nrow = b, ncol = b)
})
# - "simple tests" -------------------------------------------------------------
try(unitizer_sect(1:3))
try(unitizer_sect(letters))
try(unitizer_sect("mytest", expr.1, 1:3))
# note the following two produce error messages, but it's not actually an error,
# it's just that there are multiple errors and `expect_error` only suppresses
# the last one, not the preceding ones.
try(unitizer_sect("mytest", expr.1, letters, letters))
try(unitizer_sect("mytest", expr.1, letters, identity))
try(unitizer_sect("mytest", expr.2))
try(unitizer_sect("mytest", matrix(1:9, nrow = 3)))
is(sect.1 <- unitizer_sect("mytest", expr.1), "unitizerSectionExpression")
identical(unitizer:::as.expression(sect.1), expr.1)
is(sect.2 <- unitizer_sect("mytest", {
1 + 1
b <- 5
matrix(integer(), nrow = b, ncol = b)
}), "unitizerSectionExpression")
identical(sect.1, sect.2)
is(sect.3 <- unitizer_sect("mytest", expr.3), "unitizerSectionExpression")
identical(sect.1, sect.3)
is(sect.4 <- unitizer_sect("mytest", expr.4), "unitizerSectionExpression")
identical(sect.1, sect.4)
is(sect.5 <- unitizer_sect("mytest", expression(1 + 1,
b <- 5, matrix(integer(), nrow = b, ncol = b))), "unitizerSectionExpression")
identical(sect.1, sect.5)
is(sect.1 <- unitizer_sect("mytest", expr.1, compare = identical),
"unitizerSectionExpression")
unitizer_sect("hello") # warn
# - "Custom Comparison Functions" ----------------------------------------------
# Run expressions with different comparison functions
set.seed(1)
expr.1 <- expression(50 + runif(1)/10^10, message("Hello There",
runif(1)), cat("Hello there", runif(1)), stop("Yo", runif(1)))
expr.2 <- expression(50 + runif(1)/10^10, message("Hello There",
runif(1)), cat("Hello there", runif(1)), stop("Yo", runif(1)))
expr.3 <- expression(unitizer_sect("change comp funs", compare = identical,
{
50 + runif(1)/10^10
message("Hello There", runif(1))
cat("Hello there", runif(1))
stop("Yo", runif(1))
}))
expr.4 <- expression(
unitizer_sect(
"change comp funs",
compare = testFuns(
value = identical, output = all.equal, message = all.equal,
conditions = function(x, y) TRUE),
{
50 + runif(1)/10^10
message("Hello There", runif(1))
cat("Hello there", runif(1))
stop("Yo", runif(1))
}))
my.unitizer <- new("unitizer", id = 1, zero.env = new.env())
coi(my.unitizer <- my.unitizer + expr.1)
my.unitizer2 <- new("unitizer", id = 2, zero.env = new.env())
# make previous items into reference items
coi(my.unitizer2 <- my.unitizer2 + my.unitizer@items.new)
# now add back items to compare
coi(my.unitizer2 <- my.unitizer2 + expr.2)
my.unitizer3 <- new("unitizer", id = 3, zero.env = new.env())
# make previous items into reference items
coi(my.unitizer3 <- my.unitizer3 + my.unitizer@items.new)
# now add back items to compare
coi(my.unitizer3 <- my.unitizer3 + expr.3)
my.unitizer4 <- new("unitizer", id = 4, zero.env = new.env())
# make previous items into reference items
coi(my.unitizer4 <- my.unitizer4 + my.unitizer@items.new)
# now add back items to compare
coi(my.unitizer4 <- my.unitizer4 + expr.4)
my.unitizer2@tests.result
my.unitizer3@tests.result
my.unitizer4@tests.result
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.