tests/testthat/test-position_dodge2_keep.R

context("position_dodge2_keep")

test_that("test expected default arguments", {
  position <- position_dodge2_keep()
  expect_identical(position$width, 1)
  expect_identical(position$preserve, "total")
  expect_identical(position$x, 0)
  expect_identical(position$y, 0)
  expect_identical(position$kept.origin, "original")
  expect_identical(position$padding, 0.1)
  expect_type(position$compute_panel, "closure")
  expect_type(position$compute_layer, "closure")
  expect_type(position$setup_data, "closure")
  expect_type(position$setup_params, "closure")
  skip_if(condition = utils::packageVersion("ggplot2") < "4.0.0",
          message = "'ggplot2' < 4.0.0")
  expect_false(position$reverse)
  expect_identical(position$orientation, "x")
  expect_identical(position$required_aes, character(0))
  expect_type(position$aesthetics, "closure")
  expect_type(position$use_defaults, "closure")
})

test_that("test expected user arguments", {
  position <-
    position_dodge2_keep(preserve = "single", width = 0.5,
                         kept.origin = "dodged")
  expect_identical(position$width, 0.5)
  expect_identical(position$preserve, "single")
  expect_identical(position$x, 0)
  expect_identical(position$y, 0)
  expect_identical(position$kept.origin, "dodged")
  expect_identical(position$padding, 0.1)
  expect_type(position$compute_panel, "closure")
  expect_type(position$compute_layer, "closure")
  expect_type(position$setup_data, "closure")
  expect_type(position$setup_params, "closure")
  skip_if(condition = utils::packageVersion("ggplot2") < "4.0.0",
          message = "'ggplot2' < 4.0.0")
  expect_false(position$reverse)
  expect_identical(position$orientation, "x")
  expect_identical(position$required_aes, character(0))
  expect_type(position$aesthetics, "closure")
  expect_type(position$use_defaults, "closure")
})

test_that("test expected user argument 'reverse' and 'padding'", {
  skip("Not yet implemented")
  position <-
    position_dodge2_keep(reverse = TRUE, width = 0.5, padding = 0.09)
  expect_identical(position$width, 0.5)
  expect_identical(position$preserve, "single")
  expect_identical(position$x, 0)
  expect_identical(position$y, 0)
  expect_identical(position$kept.origin, "dodged")
  expect_identical(position$padding, 0.09)
  expect_type(position$compute_panel, "closure")
  expect_type(position$compute_layer, "closure")
  expect_type(position$setup_data, "closure")
  expect_type(position$setup_params, "closure")
  skip_if(condition = utils::packageVersion("ggplot2") < "4.0.0",
          message = "'ggplot2' < 4.0.0")
  expect_false(position$reverse)
  expect_identical(position$orientation, "x")
  expect_identical(position$required_aes, character(0))
  expect_type(position$aesthetics, "closure")
  expect_type(position$use_defaults, "closure")
})

test_that("test expected user argument 'orientation'", {
  skip("Not yet implemented")
  position <-
    position_dodge2_keep(orientation = "y", width = 0.5)
  expect_identical(position$width, 0.5)
  expect_identical(position$preserve, "single")
  expect_identical(position$x, 0)
  expect_identical(position$y, 0)
  expect_identical(position$kept.origin, "dodged")
  expect_identical(position$padding, 0.09)
  expect_type(position$compute_panel, "closure")
  expect_type(position$compute_layer, "closure")
  expect_type(position$setup_data, "closure")
  expect_type(position$setup_params, "closure")
  skip_if(condition = utils::packageVersion("ggplot2") < "4.0.0",
          message = "'ggplot2' < 4.0.0")
  expect_false(position$reverse)
  expect_identical(position$orientation, "y")
  expect_identical(position$required_aes, character(0))
  expect_type(position$aesthetics, "closure")
  expect_type(position$use_defaults, "closure")
})

Try the ggpp package in your browser

Any scripts or data that you put into this service are public.

ggpp documentation built on July 3, 2026, 1:07 a.m.