1 2test_that("expand_scale() produces a deprecation warning", { 3 expect_warning(expand_scale(), "deprecated") 4}) 5 6# Expanding continuous scales ----------------------------------------- 7 8test_that("expand_limits_continuous() can override limits", { 9 expect_identical(expand_limits_continuous(c(1, 2), coord_limits = c(NA, NA)), c(1, 2)) 10 expect_identical(expand_limits_continuous(c(1, 2), coord_limits = c(NA, 3)), c(1, 3)) 11 expect_identical(expand_limits_continuous(c(1, 2), coord_limits = c(0, NA)), c(0, 2)) 12}) 13 14test_that("expand_limits_continuous() expands limits", { 15 expect_identical(expand_limits_continuous(c(1, 2), expand = expansion(add = 1)), c(0, 3)) 16}) 17 18test_that("expand_limits_continuous() expands coord-supplied limits", { 19 expect_identical( 20 expand_limits_continuous(c(1, 2), coord_limits = c(0, 4), expand = expansion(add = 1)), 21 c(-1, 5) 22 ) 23}) 24 25test_that("expand_limits_continuous_trans() expands limits in coordinate space", { 26 limit_info <- expand_limits_continuous_trans( 27 c(1, 2), 28 expand = expansion(add = 0.5), 29 trans = log10_trans() 30 ) 31 32 expect_identical( 33 limit_info$continuous_range, 34 10^(expand_range4(log10(c(1, 2)), expansion(add = 0.5))) 35 ) 36 37 expect_identical( 38 limit_info$continuous_range_coord, 39 expand_range4(log10(c(1, 2)), expansion(add = 0.5)) 40 ) 41}) 42 43test_that("introduced non-finite values fall back on scale limits", { 44 limit_info <- expand_limits_continuous_trans( 45 c(1, 100), 46 expand = expansion(add = 2), 47 trans = sqrt_trans() 48 ) 49 50 expect_identical(limit_info$continuous_range, c(1, (sqrt(100) + 2)^2)) 51 expect_identical(limit_info$continuous_range_coord, c(-1, sqrt(100) + 2)) 52}) 53 54# Expanding discrete scales ----------------------------------------- 55 56test_that("expand_limits_discrete() can override limits with an empty range", { 57 expect_identical(expand_limits_discrete(NULL, coord_limits = c(-1, 8)), c(-1, 8)) 58}) 59 60test_that("expand_limits_discrete() can override limits with a discrete range", { 61 expect_identical(expand_limits_discrete(c("one", "two"), coord_limits = c(NA, NA)), c(1, 2)) 62 expect_identical(expand_limits_discrete(c("one", "two"), coord_limits = c(NA, 3)), c(1, 3)) 63 expect_identical(expand_limits_discrete(c("one", "two"), coord_limits = c(3, NA)), c(3, 2)) 64}) 65 66test_that("expand_limits_discrete() can override limits with a continuous range", { 67 expect_identical( 68 expand_limits_discrete(NULL, coord_limits = c(NA, NA), range_continuous = c(1, 2)), 69 c(1, 2) 70 ) 71 expect_identical( 72 expand_limits_discrete(NULL, coord_limits = c(NA, 3), range_continuous = c(1, 2)), 73 c(1, 3) 74 ) 75 expect_identical( 76 expand_limits_discrete(NULL, coord_limits = c(0, NA), range_continuous = c(1, 2)), 77 c(0, 2) 78 ) 79}) 80 81test_that("expand_limits_discrete() can override limits with a both discrete and continuous ranges", { 82 expect_identical( 83 expand_limits_discrete(c("one", "two"), coord_limits = c(NA, NA), range_continuous = c(1, 2)), 84 c(1, 2) 85 ) 86 expect_identical( 87 expand_limits_discrete(c("one", "two"), coord_limits = c(NA, 3), range_continuous = c(1, 2)), 88 c(1, 3) 89 ) 90 expect_identical( 91 expand_limits_discrete(c("one", "two"), coord_limits = c(0, NA), range_continuous = c(1, 2)), 92 c(0, 2) 93 ) 94}) 95 96test_that("expand_limits_continuous_trans() works with inverted transformations", { 97 limit_info <- expand_limits_continuous_trans( 98 c(1, 2), 99 expand = expansion(add = 1), 100 trans = reverse_trans() 101 ) 102 103 expect_identical(limit_info$continuous_range, c(0, 3)) 104 expect_identical(limit_info$continuous_range_coord, c(0, -3)) 105}) 106 107test_that("expand_limits_scale_discrete() begrudgingly handles numeric limits", { 108 expect_identical( 109 expand_limits_discrete( 110 -1:-16, 111 coord_limits = c(NA, NA), 112 range_continuous = c(-15, -2) 113 ), 114 c(-15, -2) 115 ) 116}) 117