File: errorTest.R

package info (click to toggle)
r-cran-foreach 1.3.0-2
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 628 kB
  • ctags: 4
  • sloc: sh: 76; makefile: 1
file content (34 lines) | stat: -rw-r--r-- 912 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
test01 <- function() {
  x <- 1:3
  checkException(foreach(i=x) %do% if (i == 2) stop('error') else i)
  checkException(
    foreach(i=x, .errorhandling='stop') %do%
      if (i == 2) stop('error') else i)
}

test02 <- function() {
  x <- 1:3
  actual <- foreach(i=x, .errorhandling='remove') %do%
    if (i == 2) stop('error') else i
  checkEquals(actual, list(1L, 3L))

  actual <- foreach(i=x, .errorhandling='remove') %do% stop('remove')
  checkEquals(actual, list())
}

test03 <- function() {
  x <- 1:3
  actual <- foreach(i=x, .errorhandling='pass') %do%
    if (i == 2) stop('error') else i
  checkEquals(1L, actual[[1]])
  checkTrue(inherits(actual[[2]], 'simpleError'))
  checkEquals(3L, actual[[3]])
}

test04 <- function() {
  n <- 3
  actual <- foreach(icount(n)) %:%
    foreach(icount(10), .errorhandling='remove') %do%
      stop('hello')
  checkEquals(actual, lapply(1:n, function(i) list()))
}