Running ‘testthat.R’ [4s/7s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > library(testthat)
  > library(pointdexter)
  > 
  > test_check("pointdexter")
   ----------- FAILURE REPORT -------------- 
   --- failure: the condition has length > 1 ---
   --- srcref --- 
  : 
   --- package (from environment) --- 
  pointdexter
   --- call from context --- 
  LabelPointsWithinPolygons(lng = cps_sy1819$school_longitude, 
      lat = cps_sy1819$school_latitude, polygon.boundaries = boundary)
   --- call from argument --- 
  if (class(polygon.boundaries) != "matrix") {
      if (!is.list(polygon.boundaries)) {
          stop("polygon.boundaries must either be of class matrix or a list of matrices.\n See ?GetPolygonBoundaries for more information.")
      }
  }
   --- R stacktrace ---
  where 1: LabelPointsWithinPolygons(lng = cps_sy1819$school_longitude, 
      lat = cps_sy1819$school_latitude, polygon.boundaries = boundary)
  where 2: eval_bare(expr, quo_get_env(quo))
  where 3: quasi_label(enquo(object), label, arg = "object")
  where 4 at testthat/test-LabelPointsWithinPolygons_output.R#18: expect_is(LabelPointsWithinPolygons(lng = cps_sy1819$school_longitude, 
      lat = cps_sy1819$school_latitude, polygon.boundaries = boundary), 
      "logical")
  where 5: eval(code, test_env)
  where 6: eval(code, test_env)
  where 7: withCallingHandlers({
      eval(code, test_env)
      if (!handled && !is.null(test)) {
          skip_empty()
      }
  }, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, 
      message = handle_message, error = handle_error)
  where 8: doTryCatch(return(expr), name, parentenv, handler)
  where 9: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  where 10: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  where 11: doTryCatch(return(expr), name, parentenv, handler)
  where 12: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), 
      names[nh], parentenv, handlers[[nh]])
  where 13: tryCatchList(expr, classes, parentenv, handlers)
  where 14: tryCatch(withCallingHandlers({
      eval(code, test_env)
      if (!handled && !is.null(test)) {
          skip_empty()
      }
  }, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, 
      message = handle_message, error = handle_error), error = handle_fatal, 
      skip = function(e) {
      })
  where 15: test_code(desc, code, env = parent.frame())
  where 16 at testthat/test-LabelPointsWithinPolygons_output.R#17: test_that("polygon.boundaries as a matrix returns a logical vector", 
      {
          expect_is(LabelPointsWithinPolygons(lng = cps_sy1819$school_longitude, 
              lat = cps_sy1819$school_latitude, polygon.boundaries = boundary), 
              "logical")
      })
  where 17: eval(code, test_env)
  where 18: eval(code, test_env)
  where 19: withCallingHandlers({
      eval(code, test_env)
      if (!handled && !is.null(test)) {
          skip_empty()
      }
  }, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, 
      message = handle_message, error = handle_error)
  where 20: doTryCatch(return(expr), name, parentenv, handler)
  where 21: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  where 22: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  where 23: doTryCatch(return(expr), name, parentenv, handler)
  where 24: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), 
      names[nh], parentenv, handlers[[nh]])
  where 25: tryCatchList(expr, classes, parentenv, handlers)
  where 26: tryCatch(withCallingHandlers({
      eval(code, test_env)
      if (!handled && !is.null(test)) {
          skip_empty()
      }
  }, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, 
      message = handle_message, error = handle_error), error = handle_fatal, 
      skip = function(e) {
      })
  where 27: test_code(NULL, exprs, env)
  where 28: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
  where 29: force(code)
  where 30: doWithOneRestart(return(expr), restart)
  where 31: withOneRestart(expr, restarts[[1L]])
  where 32: withRestarts(testthat_abort_reporter = function() NULL, force(code))
  where 33: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, 
      {
          reporter$start_file(basename(path))
          lister$start_file(basename(path))
          source_file(path, new.env(parent = env), chdir = TRUE, 
              wrap = wrap)
          reporter$.end_context()
          reporter$end_file()
      })
  where 34: FUN(X[[i]], ...)
  where 35: lapply(paths, test_file, env = env, reporter = current_reporter, 
      start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
  where 36: force(code)
  where 37: doWithOneRestart(return(expr), restart)
  where 38: withOneRestart(expr, restarts[[1L]])
  where 39: withRestarts(testthat_abort_reporter = function() NULL, force(code))
  where 40: with_reporter(reporter = current_reporter, results <- lapply(paths, 
      test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, 
      load_helpers = FALSE, wrap = wrap))
  where 41: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, 
      stop_on_warning = stop_on_warning, wrap = wrap)
  where 42: test_dir(path = test_path, reporter = reporter, env = env, filter = filter, 
      ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, 
      wrap = wrap)
  where 43: test_package_dir(package = package, test_path = test_path, filter = filter, 
      reporter = reporter, ..., stop_on_failure = stop_on_failure, 
      stop_on_warning = stop_on_warning, wrap = wrap)
  where 44: test_check("pointdexter")
  
   --- value of length: 2 type: logical ---
  [1] FALSE  TRUE
   --- function from context --- 
  function (lng, lat, polygon.boundaries) 
  {
      if (is.numeric(lng) == FALSE) {
          stop("lng must be a numeric vector.")
      }
      if (is.numeric(lat) == FALSE) {
          stop("lat must be a numeric vector.")
      }
      if (length(lng) != length(lat)) {
          stop("lng and lat must be of equal length.")
      }
      if (any(is.na(lng))) {
          stop("Filter lng and lat so that neither contain any NA values.")
      }
      if (any(is.na(lat))) {
          stop("Filter lng and lat so that neither contain any NA values.")
      }
      if (class(polygon.boundaries) != "matrix") {
          if (!is.list(polygon.boundaries)) {
              stop("polygon.boundaries must either be of class matrix or a list of matrices.\n See ?GetPolygonBoundaries for more information.")
          }
      }
      if (class(polygon.boundaries) != "list") {
          if (!is.matrix(polygon.boundaries)) {
              stop("polygon.boundaries must either be of class matrix or a list of matrices. See ?GetPolygonBoundaries for more information.")
          }
      }
      if (is.list(polygon.boundaries) & is.null(names(polygon.boundaries))) {
          stop("Please label the matrices within polygon.boundaries. See ?names for more details.")
      }
      df <- data.frame(x = lng, y = lat, index = 1:length(lng))
      if (is.matrix(polygon.boundaries)) {
          return(df$index %in% splancs::inpip(pts = df, poly = polygon.boundaries, 
              bound = NULL))
      }
      else {
          temp <- lapply(X = polygon.boundaries, FUN = function(i) splancs::inpip(pts = df, 
              poly = i, bound = NULL))
          names(temp) <- names(polygon.boundaries)
          temp <- utils::stack(temp)
          names(temp)[names(temp) == "values"] <- "index"
          names(temp)[names(temp) == "ind"] <- "label"
          temp$label <- as.character(temp$label)
          if (nrow(df) > nrow(temp)) {
              no.label.points <- data.frame(index = df$index[which(!df$index %in% 
                  temp$index)], label = NA)
              temp <- rbind(temp, no.label.points)
          }
          temp <- temp[order(temp$index), ]
          return(temp$label)
      }
  }
  <bytecode: 0x560e471a7788>
  <environment: namespace:pointdexter>
   --- function search by body ---
  Function LabelPointsWithinPolygons in namespace pointdexter has this body.
   ----------- END OF FAILURE REPORT -------------- 
  ── 1. Error: polygon.boundaries as a matrix returns a logical vector (@test-Labe
  the condition has length > 1
  Backtrace:
   1. testthat::expect_is(...)
   4. pointdexter::LabelPointsWithinPolygons(...)
  
  ══ testthat results  ═══════════════════════════════════════════════════════════
  [ OK: 27 | SKIPPED: 0 | WARNINGS: 0 | FAILED: 1 ]
  1. Error: polygon.boundaries as a matrix returns a logical vector (@test-LabelPointsWithinPolygons_output.R#18) 
  
  Error: testthat unit tests failed
  Execution halted