Running 'community_MN_test.R' [0s/0s]
  Running 'community_collection_test.R' [0s/1s]
  Running 'community_test.R' [0s/1s]
  Running 'community_trophic_links_test.R' [0s/1s]
  Running 'graph_tests.R' [0s/0s]
  Running 'run.R' [1s/2s]
  Running 'util_test.R' [0s/0s]
Running the tests in 'tests/run.R' failed.
Complete output:
  > # Runs all of cheddar's tests. You must cd cheddar/tests before running 
  > # Rscript run_all.R
  > options(warn=2)
  > library(cheddar)
  > 
  > # Data for test plans
  > data(Benguela, BroadstoneStream, ChesapeakeBay, SkipwithPond, TL84, TL86, 
  +      YthanEstuary, pHWebs, Millstream)
  > 
  > # One species. No properties. No trophic links.
  > c1 <- Community(nodes=data.frame(node='S'), properties=list(title='c1'))
  > 
  > # One cannibalistic species
  > c2 <- Community(nodes=data.frame(node='S'), 
  +                 trophic.links=cbind(resource='S', consumer='S'), 
  +                 properties=list(title='c2'))
   ----------- FAILURE REPORT -------------- 
   --- failure: the condition has length > 1 ---
   --- srcref --- 
  : 
   --- package (from environment) --- 
  cheddar
   --- call from context --- 
  CheckDF(trophic.links, "trophic.links", c(reserved.node.names, 
      reserved.properties.names))
   --- call from argument --- 
  if (!class(param) %in% c("matrix", "data.frame")) {
      stop(paste("'", param.name, "' must be a matrix or data.frame", 
          sep = ""))
  }
   --- R stacktrace ---
  where 1: CheckDF(trophic.links, "trophic.links", c(reserved.node.names, 
      reserved.properties.names))
  where 2: Community(nodes = data.frame(node = "S"), trophic.links = cbind(resource = "S", 
      consumer = "S"), properties = list(title = "c2"))
  
   --- value of length: 2 type: logical ---
  [1] FALSE  TRUE
   --- function from context --- 
  function (param, param.name, illegal.names) 
  {
      if (!class(param) %in% c("matrix", "data.frame")) {
          stop(paste("'", param.name, "' must be a matrix or data.frame", 
              sep = ""))
      }
      if (0 == nrow(param)) {
          stop(paste("'", param.name, "' contains no rows", sep = ""))
      }
      if (is.null(colnames(param))) {
          stop(paste("'", param.name, "' contains no column names", 
              sep = ""))
      }
      if (any(duplicated(colnames(param)))) {
          bad <- colnames(param)[duplicated(colnames(param))]
          stop(paste("The names [", paste(bad, collapse = ","), 
              "] ", "are duplicated in '", param.name, "'", sep = ""))
      }
      bad <- grep("(resource\\.|consumer\\.).*", colnames(param))
      if (length(bad)) {
          bad <- colnames(param)[bad]
          stop(paste("The names [", paste(bad, collapse = ","), 
              "] ", "in '", param.name, "' are not allowed. ", 
              "Names must not start with 'resource.' or ", "'consumer.'.", 
              sep = ""))
      }
      bad <- colnames(param) %in% illegal.names
      if (any(bad)) {
          stop(paste("'", param.name, "' must not contain the names [", 
              paste(colnames(param)[bad], collapse = ","), "]", 
              sep = ""))
      }
      return(as.data.frame(param, stringsAsFactors = FALSE, row.names = NULL))
  }
  <bytecode: 0x3d266d8>
  <environment: 0x3e6b5e0>
   --- function search by body ---
   ----------- END OF FAILURE REPORT -------------- 
  Error in if (!class(param) %in% c("matrix", "data.frame")) { : 
    the condition has length > 1
  Calls: Community -> CheckDF
  Execution halted