context('objectdiff/tracked_environment')
test_that('it can perform a diff on no changes', {
x <- tracked_environment()
patch <- objectdiff(x, x)
y <- tracked_environment(list2env(lst <- list(x = 1, y = 2)))
y <- patch(y)
expect_true(setequal(as.list(environment(y)), lst))
})
test_that('it can calculate removals', {
x <- tracked_environment(list2env(list(x = 1)))
rm('x', envir = x)
patch <- objectdiff(x, x)
y <- tracked_environment(list2env(list(x = 1)))
patch(y)
expect_is(y, 'tracked_environment')
expect_null(y$x)
})
test_that('it can calculate additions', {
x <- tracked_environment()
x$x <- 1
patch <- objectdiff(x, x)
y <- tracked_environment()
patch(y)
expect_is(y, 'tracked_environment')
expect_equal(y$x, 1)
})
test_that('it can calculate modifications', {
x <- tracked_environment()
x <- tracked_environment(list2env(list(x = 1)))
x$x <- 2
patch <- objectdiff(x, x)
y <- tracked_environment(list2env(list(x = 3)))
patch(y)
expect_is(y, 'tracked_environment')
expect_equal(y$x, 2)
})
# TODO: (RK) Add way more!
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.