File: test_bpexportglobals.R

package info (click to toggle)
r-bioc-biocparallel 1.40.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,768 kB
  • sloc: cpp: 139; sh: 14; makefile: 8
file content (55 lines) | stat: -rw-r--r-- 1,693 bytes parent folder | download
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
message("Testing bpexportglobals")

test_bpexportglobals_params <- function()
{
    ## Multicore
    if (.Platform$OS.type == "unix") {
        param <- MulticoreParam()
        checkIdentical(bpexportglobals(param), TRUE)
        bpexportglobals(param) <- FALSE
        checkIdentical(bpexportglobals(param), FALSE)
        param <- MulticoreParam(exportglobals=FALSE)
        checkIdentical(bpexportglobals(param), FALSE)
    }

    ## Snow
    param <- SnowParam()
    checkIdentical(bpexportglobals(param), TRUE)
    bpexportglobals(param) <- FALSE
    checkIdentical(bpexportglobals(param), FALSE)
    param <- SnowParam(exportglobals=FALSE)
    checkIdentical(bpexportglobals(param), FALSE)

    ## Batchtools
    param <- BatchtoolsParam()
    checkIdentical(bpexportglobals(param), TRUE)
    bpexportglobals(param) <- FALSE
    checkIdentical(bpexportglobals(param), FALSE)
    param <- BatchtoolsParam(exportglobals=FALSE)
    checkIdentical(bpexportglobals(param), FALSE)
}

test_bpexportglobals_bplapply <- function()
{
    oopts <- options(BAR="baz")
    on.exit(options(oopts))

    param <- SnowParam(2L, exportglobals=FALSE)
    current <- bplapply(1:2, function(i) getOption("BAR"), BPPARAM=param)
    checkIdentical(NULL, unlist(current))

    param <- SnowParam(2L, exportglobals=TRUE)
    current <- bplapply(1:2, function(i) getOption("BAR"), BPPARAM=param)
    checkIdentical("baz", unique(unlist(current)))
}

test_bpexportglobals_lazyEvaluation <- function(){
    foo <- function(k){
        param <- SnowParam(2L, exportglobals=TRUE)
        bplapply(1:2, function(x){
            k
        }, BPPARAM = param)
    }
    k <- 1
    checkIdentical(foo(k), list(1, 1))
}