test_that("create_square() correctly generates a square", {
# Unit square centered around (0, 0)
unit_square <- data.frame(
x = c(-.5, .5, .5, -.5, -.5),
y = c(-.5, -.5, .5, .5, -.5)
)
# Run the test
expect_identical(create_square(1), unit_square)
})
test_that("create_circle() correctly generates a unit circle", {
# Create a unit circle
unit_circle <- create_circle()
# Check that all x and y values are between -1 and 1 (inclusive). NOTE: a
# point that is radially at least .999 units in distance from the origin will
# be considered at radius 1
unit_circle["dist"] <- distance_formula(unit_circle$x, unit_circle$y, 0, 0)
unit_circle[unit_circle["dist"] >= .999, "dist_okay"] <- 1
# If each point on the circle is an equal number of units away from the
# origin, then the sum of dist_okay should be the same as the number of rows
# in the data frame
# Run the test
expect_equal(nrow(unit_circle), sum(unit_circle$dist_okay))
})
test_that("create_rectangle() correctly generates a rectangle", {
# Unit square centered around (0, 0)
unit_square <- data.frame(
x = c(-.5, .5, .5, -.5, -.5),
y = c(-.5, -.5, .5, .5, -.5)
)
# Run the test
expect_identical(create_rectangle(-.5, .5, -.5, .5), unit_square)
})
test_that("create_diamond() correctly generates a diamond", {
# Unit diamond centered at (0, 0)
unit_diamond <- data.frame(
x = c(-.5, 0, .5, 0, -.5),
y = c(0, -.5, 0, .5, 0)
)
# Run the test
expect_identical(create_diamond(1, 1), unit_diamond)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.