tests/testthat/test-map.R

test_that("map() returns error on incorrect parameters", {
  skip_if_offline()
  ppi <- project_as_ppi(example_scan)
  basemap <-  rosm::osm.types()[1]
  # return error when input object is not of class ppi
  expect_error(
    map("a"),
    regexp = 'no applicable method for \'map\' applied to an object of class "character"',
    fixed = TRUE
  )
  # return error when quantity is passed as an argument
  expect_error(
    map(ppi, quantity = 4),
    regexp = "unknown function argument 'quantity`. Did you mean `param`?",
    fixed = TRUE
  )
  # return error when param isn't a character string
  expect_error(
    map(ppi, param = 4),
    regexp = "'param' should be a character string with a valid scan parameter name.",
    fixed = TRUE
  )
  # return error on unexisting parameter
  expect_error(
    map(ppi, param = "not_a_parameter"),
    regexp = "no scan parameter 'not_a_parameter' in this ppi",
    fixed = TRUE
  )
  # return error on non projected ppi
  ppi_no_crs <- ppi
  raster::crs(ppi_no_crs$data) <- NA
  expect_error(
    map(ppi_no_crs),
    regexp = "Not a projected ppi, map() expects a ppi generated by project_as_ppi() with argument project=TRUE",
    fixed = TRUE
  )
  # return error when palette isn't a character vector
  expect_error(
    map(ppi, map = basemap, palette = 123),
    regexp = "palette should be a character vector with hex color values",
    fixed = TRUE
  )

})
adokter/bioRad documentation built on Feb. 1, 2024, 3:38 p.m.