Last updated on 2026-10-01 13:52:03 CEST.
| Flavor | Version | Tinstall | Tcheck | Ttotal | Status | Flags |
|---|---|---|---|---|---|---|
| r-devel-linux-x86_64-debian-clang | 1.5.0 | 45.21 | 247.46 | 292.67 | OK | |
| r-devel-linux-x86_64-debian-gcc | 1.5.0 | 37.23 | 209.89 | 247.12 | OK | |
| r-devel-linux-x86_64-fedora-clang | 1.5.0 | 29.00 | 153.57 | 182.57 | OK | |
| r-devel-linux-x86_64-fedora-gcc | 1.5.0 | 42.00 | 167.23 | 209.23 | OK | |
| r-devel-windows-x86_64 | 1.5.0 | 70.00 | 388.00 | 458.00 | OK | |
| r-patched-linux-x86_64 | 1.5.0 | 52.82 | 235.94 | 288.76 | OK | |
| r-release-linux-x86_64 | 1.5.0 | 51.07 | 240.08 | 291.15 | OK | |
| r-release-macos-arm64 | 1.5.0 | 12.00 | 90.00 | 102.00 | OK | |
| r-release-macos-x86_64 | 1.5.0 | 38.00 | 405.00 | 443.00 | OK | |
| r-release-windows-x86_64 | 1.5.0 | 70.00 | 313.00 | 383.00 | OK | |
| r-oldrel-macos-arm64 | 1.5.0 | 16.00 | 75.00 | 91.00 | ERROR | |
| r-oldrel-macos-x86_64 | 1.5.0 | 41.00 | 551.00 | 592.00 | OK | |
| r-oldrel-windows-x86_64 | 1.5.0 | 88.00 | 408.00 | 496.00 | OK |
Version: 1.5.0
Check: tests
Result: ERROR
Running ‘testthat.R’ [2s/2s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(GMMAT)
> Sys.setenv(MKL_NUM_THREADS = 1)
>
> test_check("GMMAT")
*** caught segfault ***
address 0x110, cause 'invalid permissions'
*** caught segfault ***
address 0x110, cause 'invalid permissions'
Traceback:
1: eval(c.expr, envir = args, enclos = envir)
Traceback:
1: 2: eval(c.expr, envir = args, enclos = envir)eval(c.expr, envir = args, enclos = envir)
2: 3: eval(c.expr, envir = args, enclos = envir)doTryCatch(return(expr), name, parentenv, handler)
3: 4: doTryCatch(return(expr), name, parentenv, handler)tryCatchOne(expr, names, parentenv, handlers[[1L]])
4: 5: tryCatchOne(expr, names, parentenv, handlers[[1L]])tryCatchList(expr, classes, parentenv, handlers)
5: 6: tryCatchList(expr, classes, parentenv, handlers)tryCatch(eval(c.expr, envir = args, enclos = envir), error = function(e) e)
6: 7: tryCatch(eval(c.expr, envir = args, enclos = envir), error = function(e) e)FUN(X[[i]], ...)
7: 8: FUN(X[[i]], ...)lapply(X = S, FUN = FUN, ...)
8: 9: lapply(X = S, FUN = FUN, ...)doTryCatch(return(expr), name, parentenv, handler)
9: 10: doTryCatch(return(expr), name, parentenv, handler)tryCatchOne(expr, names, parentenv, handlers[[1L]])
10: 11: tryCatchOne(expr, names, parentenv, handlers[[1L]])tryCatchList(expr, classes, parentenv, handlers)
11: 12: tryCatchList(expr, classes, parentenv, handlers)tryCatch(expr, error = function(e) {
call <- conditionCall(e)12: if (!is.null(call)) {tryCatch(expr, error = function(e) { if (identical(call[[1L]], quote(doTryCatch))) call <- conditionCall(e) call <- sys.call(-4L) if (!is.null(call)) { dcall <- deparse(call, nlines = 1L) if (identical(call[[1L]], quote(doTryCatch))) prefix <- paste("Error in", dcall, ": ") call <- sys.call(-4L) LONG <- 75L dcall <- deparse(call, nlines = 1L) sm <- strsplit(conditionMessage(e), "\n")[[1L]] prefix <- paste("Error in", dcall, ": ") w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w") LONG <- 75L sm <- strsplit(conditionMessage(e), "\n")[[1L]] w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w") if (is.na(w)) w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L], if (is.na(w)) type = "b") w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L], if (w > LONG) prefix <- paste0(prefix, "\n ") type = "b") } if (w > LONG) else prefix <- "Error : " prefix <- paste0(prefix, "\n ") msg <- paste0(prefix, conditionMessage(e), "\n") } .Internal(seterrmessage(msg[1L])) else prefix <- "Error : " if (!silent && isTRUE(getOption("show.error.messages"))) { msg <- paste0(prefix, conditionMessage(e), "\n") cat(msg, file = outFile) .Internal(seterrmessage(msg[1L])) .Internal(printDeferredWarnings()) if (!silent && isTRUE(getOption("show.error.messages"))) { } cat(msg, file = outFile) invisible(structure(msg, class = "try-error", condition = e)) .Internal(printDeferredWarnings())}) }
invisible(structure(msg, class = "try-error", condition = e))13: })try(lapply(X = S, FUN = FUN, ...), silent = TRUE)
13: 14: try(lapply(X = S, FUN = FUN, ...), silent = TRUE)sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE))
14: 15: sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE))FUN(X[[i]], ...)
16: 15: lapply(seq_len(cores), inner.do)FUN(X[[i]], ...)
17: 16: mclapply(argsList, FUN, mc.preschedule = preschedule, mc.set.seed = set.seed, lapply(seq_len(cores), inner.do) mc.silent = silent, mc.cores = cores)
17: 18: mclapply(argsList, FUN, mc.preschedule = preschedule, mc.set.seed = set.seed, e$fun(obj, substitute(ex), parent.frame(), e$data) mc.silent = silent, mc.cores = cores)
19: 18: foreach(i = 1:ncores) %dopar% {e$fun(obj, substitute(ex), parent.frame(), e$data) if (!is.null(obj$P)) {
if (bgenInfo$LayoutFlag == 2) {19: .Call(C_glmm_score_bgen13, as.numeric(res), obj$P, foreach(i = 1:ncores) %dopar% { infile, paste0(outfile, "_tmp.", i), center2, if (!is.null(obj$P)) { MAF.range[1], MAF.range[2], miss.cutoff, miss.method, if (bgenInfo$LayoutFlag == 2) { nperbatch, select, threadInfo$begin[i], threadInfo$end[i], .Call(C_glmm_score_bgen13, as.numeric(res), obj$P, threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, infile, paste0(outfile, "_tmp.", i), center2, 1) MAF.range[1], MAF.range[2], miss.cutoff, miss.method, } nperbatch, select, threadInfo$begin[i], threadInfo$end[i], else { threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, .Call(C_glmm_score_bgen11, as.numeric(res), obj$P, 1) infile, paste0(outfile, "_tmp.", i), center2, } MAF.range[1], MAF.range[2], miss.cutoff, miss.method, else { nperbatch, select, threadInfo$begin[i], threadInfo$end[i], .Call(C_glmm_score_bgen11, as.numeric(res), obj$P, threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, infile, paste0(outfile, "_tmp.", i), center2, 1) MAF.range[1], MAF.range[2], miss.cutoff, miss.method, } nperbatch, select, threadInfo$begin[i], threadInfo$end[i], } threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, else { 1) if (bgenInfo$LayoutFlag == 2) { } .Call(C_glmm_score_bgen13_sp, as.numeric(res), obj$Sigma_i, } obj$Sigma_iX, obj$cov, infile, paste0(outfile, else { "_tmp.", i), center2, MAF.range[1], MAF.range[2], if (bgenInfo$LayoutFlag == 2) { miss.cutoff, miss.method, nperbatch, select, .Call(C_glmm_score_bgen13_sp, as.numeric(res), obj$Sigma_i, threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], obj$Sigma_iX, obj$cov, infile, paste0(outfile, bgenInfo$N, bgenInfo$CompressionFlag, 1) "_tmp.", i), center2, MAF.range[1], MAF.range[2], } miss.cutoff, miss.method, nperbatch, select, else { threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], .Call(C_glmm_score_bgen11_sp, as.numeric(res), obj$Sigma_i, bgenInfo$N, bgenInfo$CompressionFlag, 1) obj$Sigma_iX, obj$cov, infile, paste0(outfile, } "_tmp.", i), center2, MAF.range[1], MAF.range[2], else { miss.cutoff, miss.method, nperbatch, select, .Call(C_glmm_score_bgen11_sp, as.numeric(res), obj$Sigma_i, threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], obj$Sigma_iX, obj$cov, infile, paste0(outfile, bgenInfo$N, bgenInfo$CompressionFlag, 1) "_tmp.", i), center2, MAF.range[1], MAF.range[2], } miss.cutoff, miss.method, nperbatch, select, } threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], } bgenInfo$N, bgenInfo$CompressionFlag, 1)
}20: }glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, } outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2)
20: 21: glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, eval(code, test_env) outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2)
22: 21: eval(code, test_env)eval(code, test_env)
23: 22: withCallingHandlers({eval(code, test_env) eval(code, test_env)
new_expectations <- the$test_expectations > starting_expectations23: if (snapshot_skipped) {withCallingHandlers({ skip("On CRAN") eval(code, test_env) } new_expectations <- the$test_expectations > starting_expectations else if (!new_expectations && skip_on_empty) { if (snapshot_skipped) { skip_empty() skip("On CRAN") } }}, expectation = handle_expectation, packageNotFoundError = function(e) { else if (!new_expectations && skip_on_empty) { if (on_cran()) { skip_empty() skip(paste0("{", e$package, "} is not installed.")) } }}, expectation = handle_expectation, packageNotFoundError = function(e) {}, snapshot_on_cran = function(cnd) { if (on_cran()) { snapshot_skipped <<- TRUE skip(paste0("{", e$package, "} is not installed.")) invokeRestart("muffle_cran_snapshot") }}, skip = handle_skip, warning = handle_warning, message = handle_message, }, snapshot_on_cran = function(cnd) { error = handle_error, interrupt = handle_interrupt) snapshot_skipped <<- TRUE
invokeRestart("muffle_cran_snapshot")24: }, skip = handle_skip, warning = handle_warning, message = handle_message, doTryCatch(return(expr), name, parentenv, handler) error = handle_error, interrupt = handle_interrupt)
25: 24: tryCatchOne(expr, names, parentenv, handlers[[1L]])doTryCatch(return(expr), name, parentenv, handler)
26: 25: tryCatchList(expr, classes, parentenv, handlers)tryCatchOne(expr, names, parentenv, handlers[[1L]])
27: 26: tryCatch(withCallingHandlers({tryCatchList(expr, classes, parentenv, handlers) eval(code, test_env)
new_expectations <- the$test_expectations > starting_expectations27: if (snapshot_skipped) {tryCatch(withCallingHandlers({ skip("On CRAN") eval(code, test_env) } new_expectations <- the$test_expectations > starting_expectations else if (!new_expectations && skip_on_empty) { if (snapshot_skipped) { skip_empty() skip("On CRAN") } }}, expectation = handle_expectation, packageNotFoundError = function(e) { else if (!new_expectations && skip_on_empty) { if (on_cran()) { skip_empty() skip(paste0("{", e$package, "} is not installed.")) } }}, expectation = handle_expectation, packageNotFoundError = function(e) {}, snapshot_on_cran = function(cnd) { if (on_cran()) { snapshot_skipped <<- TRUE skip(paste0("{", e$package, "} is not installed.")) invokeRestart("muffle_cran_snapshot") }}, skip = handle_skip, warning = handle_warning, message = handle_message, }, snapshot_on_cran = function(cnd) { error = handle_error, interrupt = handle_interrupt), error = handle_fatal) snapshot_skipped <<- TRUE
invokeRestart("muffle_cran_snapshot")28: }, skip = handle_skip, warning = handle_warning, message = handle_message, doWithOneRestart(return(expr), restart) error = handle_error, interrupt = handle_interrupt), error = handle_fatal)
29: 28: withOneRestart(expr, restarts[[1L]])doWithOneRestart(return(expr), restart)
30: 29: withRestarts(tryCatch(withCallingHandlers({withOneRestart(expr, restarts[[1L]]) eval(code, test_env)
new_expectations <- the$test_expectations > starting_expectations30: if (snapshot_skipped) {withRestarts(tryCatch(withCallingHandlers({ skip("On CRAN") eval(code, test_env) } new_expectations <- the$test_expectations > starting_expectations else if (!new_expectations && skip_on_empty) { if (snapshot_skipped) { skip_empty() skip("On CRAN") } }}, expectation = handle_expectation, packageNotFoundError = function(e) { else if (!new_expectations && skip_on_empty) { if (on_cran()) { skip_empty() skip(paste0("{", e$package, "} is not installed.")) } }}, expectation = handle_expectation, packageNotFoundError = function(e) {}, snapshot_on_cran = function(cnd) { if (on_cran()) { snapshot_skipped <<- TRUE skip(paste0("{", e$package, "} is not installed.")) invokeRestart("muffle_cran_snapshot") }}, skip = handle_skip, warning = handle_warning, message = handle_message, }, snapshot_on_cran = function(cnd) { error = handle_error, interrupt = handle_interrupt), error = handle_fatal), snapshot_skipped <<- TRUE end_test = function() { invokeRestart("muffle_cran_snapshot") })}, skip = handle_skip, warning = handle_warning, message = handle_message,
error = handle_error, interrupt = handle_interrupt), error = handle_fatal), 31: end_test = function() {test_code(code, parent.frame()) })
32: 31: test_that("cross-sectional id le 400 binomial", {test_code(code, parent.frame()) plinkfiles <- strsplit(system.file("extdata", "geno.bed",
package = "GMMAT"), ".bed", fixed = TRUE)[[1]]32: bgenfile <- system.file("extdata", "geno.bgen", package = "GMMAT")test_that("cross-sectional id le 400 binomial", { samplefile <- system.file("extdata", "geno.sample", package = "GMMAT") plinkfiles <- strsplit(system.file("extdata", "geno.bed", gdsfile <- system.file("extdata", "geno.gds", package = "GMMAT") package = "GMMAT"), ".bed", fixed = TRUE)[[1]] txtfile <- system.file("extdata", "geno.txt", package = "GMMAT") bgenfile <- system.file("extdata", "geno.bgen", package = "GMMAT") txtfile1 <- system.file("extdata", "geno.txt.gz", package = "GMMAT") samplefile <- system.file("extdata", "geno.sample", package = "GMMAT") txtfile2 <- system.file("extdata", "geno.txt.bz2", package = "GMMAT") gdsfile <- system.file("extdata", "geno.gds", package = "GMMAT") data(example) txtfile <- system.file("extdata", "geno.txt", package = "GMMAT") suppressWarnings(RNGversion("3.5.0")) txtfile1 <- system.file("extdata", "geno.txt.gz", package = "GMMAT") set.seed(123) txtfile2 <- system.file("extdata", "geno.txt.bz2", package = "GMMAT") pheno <- rbind(example$pheno, example$pheno[1:100, ]) data(example) pheno$id <- 1:500 suppressWarnings(RNGversion("3.5.0")) pheno$disease[sample(1:500, 20)] <- NA set.seed(123) pheno$age[sample(1:500, 20)] <- NA pheno <- rbind(example$pheno, example$pheno[1:100, ]) pheno$sex[sample(1:500, 20)] <- NA pheno$id <- 1:500 pheno <- pheno[sample(1:500, 450), ] pheno$disease[sample(1:500, 20)] <- NA pheno <- pheno[pheno$id <= 400, ] pheno$age[sample(1:500, 20)] <- NA kins <- example$GRM pheno$sex[sample(1:500, 20)] <- NA obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, pheno <- pheno[sample(1:500, 450), ] id = "id", family = binomial(link = "logit"), method = "REML", pheno <- pheno[pheno$id <= 400, ] method.optim = "AI") kins <- example$GRM select <- match(1:400, unique(obj1$id_include)) obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, select[is.na(select)] <- 0 id = "id", family = binomial(link = "logit"), method = "REML", obj1.outfile.bed.noselect.1 <- tempfile() method.optim = "AI") glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1) select <- match(1:400, unique(obj1$id_include)) obj1.bed.noselect.1 <- read.table(obj1.outfile.bed.noselect.1, select[is.na(select)] <- 0 header = TRUE, as.is = TRUE) obj1.outfile.bed.noselect.1 <- tempfile() obj1.outfile.bed.noselect.1.tmp <- tempfile() glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1) expect_error(glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1.tmp, obj1.bed.noselect.1 <- read.table(obj1.outfile.bed.noselect.1, ncores = 2), "Error: parallel computing currently not implemented for PLINK binary format genotypes.") header = TRUE, as.is = TRUE) unlink(obj1.outfile.bed.noselect.1.tmp) obj1.outfile.bed.noselect.1.tmp <- tempfile() obj1.outfile.bed.select.1 <- tempfile() expect_error(glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1.tmp, ncores = 2), "Error: parallel computing currently not implemented for PLINK binary format genotypes.") glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.1) unlink(obj1.outfile.bed.noselect.1.tmp) obj1.bed.select.1 <- read.table(obj1.outfile.bed.select.1, obj1.outfile.bed.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.1) expect_equal(obj1.bed.noselect.1, obj1.bed.select.1) obj1.bed.select.1 <- read.table(obj1.outfile.bed.select.1, obj1.outfile.bgen.noselect.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, expect_equal(obj1.bed.noselect.1, obj1.bed.select.1) outfile = obj1.outfile.bgen.noselect.1) obj1.outfile.bgen.noselect.1 <- tempfile() obj1.bgen.noselect.1 <- read.table(obj1.outfile.bgen.noselect.1, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) outfile = obj1.outfile.bgen.noselect.1) obj1.outfile.bgen.noselect.1.tmp <- tempfile() obj1.bgen.noselect.1 <- read.table(obj1.outfile.bgen.noselect.1, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2) obj1.outfile.bgen.noselect.1.tmp <- tempfile() obj1.bgen.noselect.1.tmp <- read.table(obj1.outfile.bgen.noselect.1.tmp, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.1.tmp) obj1.bgen.noselect.1.tmp <- read.table(obj1.outfile.bgen.noselect.1.tmp, unlink(obj1.outfile.bgen.noselect.1.tmp) header = TRUE, as.is = TRUE) obj1.outfile.bgen.select.1 <- tempfile() expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.1.tmp) glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, unlink(obj1.outfile.bgen.noselect.1.tmp) select = select, outfile = obj1.outfile.bgen.select.1) obj1.outfile.bgen.select.1 <- tempfile() obj1.bgen.select.1 <- read.table(obj1.outfile.bgen.select.1, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) select = select, outfile = obj1.outfile.bgen.select.1) expect_equal(obj1.bgen.noselect.1, obj1.bgen.select.1) obj1.bgen.select.1 <- read.table(obj1.outfile.bgen.select.1, expect_equal(obj1.bed.select.1[, c("SNP", "CHR", "POS", "A1", header = TRUE, as.is = TRUE) "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj1.bgen.select.1[, expect_equal(obj1.bgen.noselect.1, obj1.bgen.select.1) c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", expect_equal(obj1.bed.select.1[, c("SNP", "CHR", "POS", "A1", "VAR", "PVAL")]) "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj1.bgen.select.1[, if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", quietly = TRUE)) { "VAR", "PVAL")]) obj1.outfile.gds.noselect.1 <- tempfile() if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1) quietly = TRUE)) { obj1.gds.noselect.1 <- read.table(obj1.outfile.gds.noselect.1, obj1.outfile.gds.noselect.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1) obj1.outfile.gds.noselect.1.tmp <- tempfile() obj1.gds.noselect.1 <- read.table(obj1.outfile.gds.noselect.1, glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1.tmp, header = TRUE, as.is = TRUE) ncores = 2) obj1.outfile.gds.noselect.1.tmp <- tempfile() obj1.gds.noselect.1.tmp <- read.table(obj1.outfile.gds.noselect.1.tmp, glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1.tmp, header = TRUE, as.is = TRUE) ncores = 2) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.1.tmp) obj1.gds.noselect.1.tmp <- read.table(obj1.outfile.gds.noselect.1.tmp, unlink(obj1.outfile.gds.noselect.1.tmp) header = TRUE, as.is = TRUE) obj1.outfile.gds.select.1 <- tempfile() expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.1.tmp) glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.1) unlink(obj1.outfile.gds.noselect.1.tmp) obj1.gds.select.1 <- read.table(obj1.outfile.gds.select.1, obj1.outfile.gds.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.1) expect_equal(obj1.gds.noselect.1, obj1.gds.select.1) obj1.gds.select.1 <- read.table(obj1.outfile.gds.select.1, expect_equal(obj1.bed.select.1$PVAL, signif(obj1.gds.select.1$PVAL)) header = TRUE, as.is = TRUE) expect_equal(signif(range(obj1.gds.select.1$PVAL)), signif(c(0.003804942, expect_equal(obj1.gds.noselect.1, obj1.gds.select.1) 0.986534857))) expect_equal(obj1.bed.select.1$PVAL, signif(obj1.gds.select.1$PVAL)) unlink(c(obj1.outfile.gds.noselect.1, obj1.outfile.gds.select.1)) expect_equal(signif(range(obj1.gds.select.1$PVAL)), signif(c(0.003804942, } 0.986534857))) obj1.outfile.txt.select.1 <- tempfile() unlink(c(obj1.outfile.gds.noselect.1, obj1.outfile.gds.select.1)) glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1, } infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.outfile.txt.select.1 <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1, "Allele2")) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.txt.select.1 <- read.table(obj1.outfile.txt.select.1, select = select, infile.header.print = c("SNP", "Allele1", header = TRUE, as.is = TRUE) "Allele2")) expect_equal(obj1.bed.select.1$PVAL, obj1.txt.select.1$PVAL) obj1.txt.select.1 <- read.table(obj1.outfile.txt.select.1, obj1.outfile.txt.select.1.tmp <- tempfile() header = TRUE, as.is = TRUE) expect_error(glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1.tmp, expect_equal(obj1.bed.select.1$PVAL, obj1.txt.select.1$PVAL) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.outfile.txt.select.1.tmp <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", expect_error(glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1.tmp, "Allele2"), ncores = 2), "Error: parallel computing currently not implemented for plain text format genotypes.") infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, unlink(obj1.outfile.txt.select.1.tmp) select = select, infile.header.print = c("SNP", "Allele1", obj1.outfile.txt1.select.1 <- tempfile() "Allele2"), ncores = 2), "Error: parallel computing currently not implemented for plain text format genotypes.") glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.1, unlink(obj1.outfile.txt.select.1.tmp) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.outfile.txt1.select.1 <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.1, "Allele2")) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.txt1.select.1 <- read.table(obj1.outfile.txt1.select.1, select = select, infile.header.print = c("SNP", "Allele1", header = TRUE, as.is = TRUE) "Allele2")) expect_equal(obj1.txt.select.1, obj1.txt1.select.1) obj1.txt1.select.1 <- read.table(obj1.outfile.txt1.select.1, obj1.outfile.txt2.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.1, expect_equal(obj1.txt.select.1, obj1.txt1.select.1) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.outfile.txt2.select.1 <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.1, "Allele2")) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.txt2.select.1 <- read.table(obj1.outfile.txt2.select.1, select = select, infile.header.print = c("SNP", "Allele1", header = TRUE, as.is = TRUE) "Allele2")) expect_equal(obj1.txt.select.1, obj1.txt2.select.1) obj1.txt2.select.1 <- read.table(obj1.outfile.txt2.select.1, unlink(c(obj1.outfile.bed.noselect.1, obj1.outfile.bed.select.1, header = TRUE, as.is = TRUE) obj1.outfile.bgen.noselect.1, obj1.outfile.bgen.select.1, expect_equal(obj1.txt.select.1, obj1.txt2.select.1) obj1.outfile.txt.select.1, obj1.outfile.txt1.select.1, unlink(c(obj1.outfile.bed.noselect.1, obj1.outfile.bed.select.1, obj1.outfile.txt2.select.1)) obj1.outfile.bgen.noselect.1, obj1.outfile.bgen.select.1, skip_on_cran() obj1.outfile.txt.select.1, obj1.outfile.txt1.select.1, obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, obj1.outfile.txt2.select.1)) id = "id", family = binomial(link = "logit"), method = "REML", skip_on_cran() method.optim = "AI") obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, select <- match(1:400, unique(obj2$id_include)) id = "id", family = binomial(link = "logit"), method = "REML", select[is.na(select)] <- 0 method.optim = "AI") obj2.outfile.bed.noselect.1 <- tempfile() select <- match(1:400, unique(obj2$id_include)) glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.1) select[is.na(select)] <- 0 obj2.bed.noselect.1 <- read.table(obj2.outfile.bed.noselect.1, obj2.outfile.bed.noselect.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.1) obj2.outfile.bed.select.1 <- tempfile() obj2.bed.noselect.1 <- read.table(obj2.outfile.bed.noselect.1, glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.1) header = TRUE, as.is = TRUE) obj2.bed.select.1 <- read.table(obj2.outfile.bed.select.1, obj2.outfile.bed.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.1) expect_equal(obj2.bed.noselect.1, obj2.bed.select.1) obj2.bed.select.1 <- read.table(obj2.outfile.bed.select.1, obj2.outfile.bgen.noselect.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, expect_equal(obj2.bed.noselect.1, obj2.bed.select.1) outfile = obj2.outfile.bgen.noselect.1) obj2.outfile.bgen.noselect.1 <- tempfile() obj2.bgen.noselect.1 <- read.table(obj2.outfile.bgen.noselect.1, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) outfile = obj2.outfile.bgen.noselect.1) obj2.outfile.bgen.select.1 <- tempfile() obj2.bgen.noselect.1 <- read.table(obj2.outfile.bgen.noselect.1, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) select = select, outfile = obj2.outfile.bgen.select.1) obj2.outfile.bgen.select.1 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, obj2.bgen.select.1 <- read.table(obj2.outfile.bgen.select.1, select = select, outfile = obj2.outfile.bgen.select.1) obj2.bgen.select.1 <- read.table(obj2.outfile.bgen.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bgen.noselect.1, obj2.bgen.select.1) expect_equal(obj2.bgen.noselect.1, obj2.bgen.select.1) expect_equal(obj2.bed.select.1[, c("SNP", "CHR", "POS", "A1", expect_equal(obj2.bed.select.1[, c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj2.bgen.select.1[, "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj2.bgen.select.1[, c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", "VAR", "PVAL")]) "VAR", "PVAL")]) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", quietly = TRUE)) { quietly = TRUE)) { obj2.outfile.gds.noselect.1 <- tempfile() obj2.outfile.gds.noselect.1 <- tempfile() glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.1) glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.1) obj2.gds.noselect.1 <- read.table(obj2.outfile.gds.noselect.1, obj2.gds.noselect.1 <- read.table(obj2.outfile.gds.noselect.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) obj2.outfile.gds.select.1 <- tempfile() obj2.outfile.gds.select.1 <- tempfile() glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.1) glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.1) obj2.gds.select.1 <- read.table(obj2.outfile.gds.select.1, obj2.gds.select.1 <- read.table(obj2.outfile.gds.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.gds.noselect.1, obj2.gds.select.1) expect_equal(obj2.gds.noselect.1, obj2.gds.select.1) expect_equal(obj2.bed.select.1$PVAL, signif(obj2.gds.select.1$PVAL)) expect_equal(obj2.bed.select.1$PVAL, signif(obj2.gds.select.1$PVAL)) expect_equal(signif(range(obj2.gds.select.1$PVAL)), signif(c(0.003738918, expect_equal(signif(range(obj2.gds.select.1$PVAL)), signif(c(0.003738918, 0.996996766))) 0.996996766))) } } obj2.outfile.txt.select.1 <- tempfile() obj2.outfile.txt.select.1 <- tempfile() glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.1, glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.1, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt.select.1 <- read.table(obj2.outfile.txt.select.1, obj2.txt.select.1 <- read.table(obj2.outfile.txt.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bed.select.1$PVAL, obj2.txt.select.1$PVAL) expect_equal(obj2.bed.select.1$PVAL, obj2.txt.select.1$PVAL) obj2.outfile.txt1.select.1 <- tempfile() obj2.outfile.txt1.select.1 <- tempfile() glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.1, glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.1, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt1.select.1 <- read.table(obj2.outfile.txt1.select.1, obj2.txt1.select.1 <- read.table(obj2.outfile.txt1.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt.select.1, obj2.txt1.select.1) expect_equal(obj2.txt.select.1, obj2.txt1.select.1) obj2.outfile.txt2.select.1 <- tempfile() obj2.outfile.txt2.select.1 <- tempfile() glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.1, glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.1, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt2.select.1 <- read.table(obj2.outfile.txt2.select.1, obj2.txt2.select.1 <- read.table(obj2.outfile.txt2.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt.select.1, obj2.txt2.select.1) expect_equal(obj2.txt.select.1, obj2.txt2.select.1) idx <- sample(nrow(pheno)) idx <- sample(nrow(pheno)) pheno <- pheno[idx, ] pheno <- pheno[idx, ] obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, id = "id", family = binomial(link = "logit"), method = "REML", id = "id", family = binomial(link = "logit"), method = "REML", method.optim = "AI") method.optim = "AI") select <- match(1:400, unique(obj1$id_include)) select <- match(1:400, unique(obj1$id_include)) select[is.na(select)] <- 0 select[is.na(select)] <- 0 obj1.outfile.bed.noselect.2 <- tempfile() obj1.outfile.bed.noselect.2 <- tempfile() glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.2) glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.2) obj1.bed.noselect.2 <- read.table(obj1.outfile.bed.noselect.2, obj1.bed.noselect.2 <- read.table(obj1.outfile.bed.noselect.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bed.noselect.1, obj1.bed.noselect.2) expect_equal(obj1.bed.noselect.1, obj1.bed.noselect.2) obj1.outfile.bed.select.2 <- tempfile() obj1.outfile.bed.select.2 <- tempfile() glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.2) glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.2) obj1.bed.select.2 <- read.table(obj1.outfile.bed.select.2, obj1.bed.select.2 <- read.table(obj1.outfile.bed.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bed.select.1, obj1.bed.select.2) expect_equal(obj1.bed.select.1, obj1.bed.select.2) obj1.outfile.bgen.noselect.2 <- tempfile() obj1.outfile.bgen.noselect.2 <- tempfile() glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, outfile = obj1.outfile.bgen.noselect.2) outfile = obj1.outfile.bgen.noselect.2) obj1.bgen.noselect.2 <- read.table(obj1.outfile.bgen.noselect.2, obj1.bgen.noselect.2 <- read.table(obj1.outfile.bgen.noselect.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.2) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.2) obj1.outfile.bgen.select.2 <- tempfile() obj1.outfile.bgen.select.2 <- tempfile() glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, select = select, outfile = obj1.outfile.bgen.select.2) select = select, outfile = obj1.outfile.bgen.select.2) obj1.bgen.select.2 <- read.table(obj1.outfile.bgen.select.2, obj1.bgen.select.2 <- read.table(obj1.outfile.bgen.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.select.1, obj1.bgen.select.2) expect_equal(obj1.bgen.select.1, obj1.bgen.select.2) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", quietly = TRUE)) { quietly = TRUE)) { obj1.outfile.gds.noselect.2 <- tempfile() obj1.outfile.gds.noselect.2 <- tempfile() glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.2) glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.2) obj1.gds.noselect.2 <- read.table(obj1.outfile.gds.noselect.2, obj1.gds.noselect.2 <- read.table(obj1.outfile.gds.noselect.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.2) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.2) obj1.outfile.gds.select.2 <- tempfile() obj1.outfile.gds.select.2 <- tempfile() glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.2) glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.2) obj1.gds.select.2 <- read.table(obj1.outfile.gds.select.2, obj1.gds.select.2 <- read.table(obj1.outfile.gds.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.gds.select.1, obj1.gds.select.2) expect_equal(obj1.gds.select.1, obj1.gds.select.2) } } obj1.outfile.txt.select.2 <- tempfile() obj1.outfile.txt.select.2 <- tempfile() glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.2, glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj1.txt.select.2 <- read.table(obj1.outfile.txt.select.2, obj1.txt.select.2 <- read.table(obj1.outfile.txt.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt.select.1, obj1.txt.select.2) expect_equal(obj1.txt.select.1, obj1.txt.select.2) obj1.outfile.txt1.select.2 <- tempfile() obj1.outfile.txt1.select.2 <- tempfile() glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.2, glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj1.txt1.select.2 <- read.table(obj1.outfile.txt1.select.2, obj1.txt1.select.2 <- read.table(obj1.outfile.txt1.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt1.select.1, obj1.txt1.select.2) expect_equal(obj1.txt1.select.1, obj1.txt1.select.2) obj1.outfile.txt2.select.2 <- tempfile() obj1.outfile.txt2.select.2 <- tempfile() glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.2, glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj1.txt2.select.2 <- read.table(obj1.outfile.txt2.select.2, obj1.txt2.select.2 <- read.table(obj1.outfile.txt2.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt2.select.1, obj1.txt2.select.2) expect_equal(obj1.txt2.select.1, obj1.txt2.select.2) obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, id = "id", family = binomial(link = "logit"), method = "REML", id = "id", family = binomial(link = "logit"), method = "REML", method.optim = "AI") method.optim = "AI") select <- match(1:400, unique(obj2$id_include)) select <- match(1:400, unique(obj2$id_include)) select[is.na(select)] <- 0 select[is.na(select)] <- 0 obj2.outfile.bed.noselect.2 <- tempfile() obj2.outfile.bed.noselect.2 <- tempfile() glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.2) glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.2) obj2.bed.noselect.2 <- read.table(obj2.outfile.bed.noselect.2, obj2.bed.noselect.2 <- read.table(obj2.outfile.bed.noselect.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.2) expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.2) obj2.outfile.bed.select.2 <- tempfile() obj2.outfile.bed.select.2 <- tempfile() glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.2) glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.2) obj2.bed.select.2 <- read.table(obj2.outfile.bed.select.2, obj2.bed.select.2 <- read.table(obj2.outfile.bed.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bed.select.1, obj2.bed.select.2) expect_equal(obj2.bed.select.1, obj2.bed.select.2) obj2.outfile.bgen.noselect.2 <- tempfile() obj2.outfile.bgen.noselect.2 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, outfile = obj2.outfile.bgen.noselect.2) outfile = obj2.outfile.bgen.noselect.2) obj2.bgen.noselect.2 <- read.table(obj2.outfile.bgen.noselect.2, obj2.bgen.noselect.2 <- read.table(obj2.outfile.bgen.noselect.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.2) expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.2) obj2.outfile.bgen.select.2 <- tempfile() obj2.outfile.bgen.select.2 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, select = select, outfile = obj2.outfile.bgen.select.2) select = select, outfile = obj2.outfile.bgen.select.2) obj2.bgen.select.2 <- read.table(obj2.outfile.bgen.select.2, obj2.bgen.select.2 <- read.table(obj2.outfile.bgen.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bgen.select.1, obj2.bgen.select.2) expect_equal(obj2.bgen.select.1, obj2.bgen.select.2) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", quietly = TRUE)) { quietly = TRUE)) { obj2.outfile.gds.noselect.2 <- tempfile() obj2.outfile.gds.noselect.2 <- tempfile() glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.2) glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.2) obj2.gds.noselect.2 <- read.table(obj2.outfile.gds.noselect.2, obj2.gds.noselect.2 <- read.table(obj2.outfile.gds.noselect.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.gds.noselect.1, obj2.gds.noselect.2) expect_equal(obj2.gds.noselect.1, obj2.gds.noselect.2) obj2.outfile.gds.select.2 <- tempfile() obj2.outfile.gds.select.2 <- tempfile() glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.2) glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.2) obj2.gds.select.2 <- read.table(obj2.outfile.gds.select.2, obj2.gds.select.2 <- read.table(obj2.outfile.gds.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.gds.select.1, obj2.gds.select.2) expect_equal(obj2.gds.select.1, obj2.gds.select.2) } } obj2.outfile.txt.select.2 <- tempfile() obj2.outfile.txt.select.2 <- tempfile() glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.2, glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt.select.2 <- read.table(obj2.outfile.txt.select.2, obj2.txt.select.2 <- read.table(obj2.outfile.txt.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt.select.1, obj2.txt.select.2) expect_equal(obj2.txt.select.1, obj2.txt.select.2) obj2.outfile.txt1.select.2 <- tempfile() obj2.outfile.txt1.select.2 <- tempfile() glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.2, glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt1.select.2 <- read.table(obj2.outfile.txt1.select.2, obj2.txt1.select.2 <- read.table(obj2.outfile.txt1.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt1.select.1, obj2.txt1.select.2) expect_equal(obj2.txt1.select.1, obj2.txt1.select.2) obj2.outfile.txt2.select.2 <- tempfile() obj2.outfile.txt2.select.2 <- tempfile() glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.2, glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt2.select.2 <- read.table(obj2.outfile.txt2.select.2, obj2.txt2.select.2 <- read.table(obj2.outfile.txt2.select.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt2.select.1, obj2.txt2.select.2) expect_equal(obj2.txt2.select.1, obj2.txt2.select.2) idx <- sample(nrow(kins)) idx <- sample(nrow(kins)) kins <- kins[idx, idx] kins <- kins[idx, idx] obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, id = "id", family = binomial(link = "logit"), method = "REML", id = "id", family = binomial(link = "logit"), method = "REML", method.optim = "AI") method.optim = "AI") select <- match(1:400, unique(obj1$id_include)) select <- match(1:400, unique(obj1$id_include)) select[is.na(select)] <- 0 select[is.na(select)] <- 0 obj1.outfile.bed.noselect.3 <- tempfile() obj1.outfile.bed.noselect.3 <- tempfile() glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.3) glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.3) obj1.bed.noselect.3 <- read.table(obj1.outfile.bed.noselect.3, obj1.bed.noselect.3 <- read.table(obj1.outfile.bed.noselect.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bed.noselect.1, obj1.bed.noselect.3) expect_equal(obj1.bed.noselect.1, obj1.bed.noselect.3) obj1.outfile.bed.select.3 <- tempfile() obj1.outfile.bed.select.3 <- tempfile() glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.3) glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.3) obj1.bed.select.3 <- read.table(obj1.outfile.bed.select.3, obj1.bed.select.3 <- read.table(obj1.outfile.bed.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bed.select.1, obj1.bed.select.3) expect_equal(obj1.bed.select.1, obj1.bed.select.3) obj1.outfile.bgen.noselect.3 <- tempfile() obj1.outfile.bgen.noselect.3 <- tempfile() glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, outfile = obj1.outfile.bgen.noselect.3) outfile = obj1.outfile.bgen.noselect.3) obj1.bgen.noselect.3 <- read.table(obj1.outfile.bgen.noselect.3, obj1.bgen.noselect.3 <- read.table(obj1.outfile.bgen.noselect.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.3) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.3) obj1.outfile.bgen.select.3 <- tempfile() obj1.outfile.bgen.select.3 <- tempfile() glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, select = select, outfile = obj1.outfile.bgen.select.3) select = select, outfile = obj1.outfile.bgen.select.3) obj1.bgen.select.3 <- read.table(obj1.outfile.bgen.select.3, obj1.bgen.select.3 <- read.table(obj1.outfile.bgen.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.select.1, obj1.bgen.select.3) expect_equal(obj1.bgen.select.1, obj1.bgen.select.3) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", quietly = TRUE)) { quietly = TRUE)) { obj1.outfile.gds.noselect.3 <- tempfile() obj1.outfile.gds.noselect.3 <- tempfile() glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.3) glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.3) obj1.gds.noselect.3 <- read.table(obj1.outfile.gds.noselect.3, obj1.gds.noselect.3 <- read.table(obj1.outfile.gds.noselect.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.3) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.3) obj1.outfile.gds.select.3 <- tempfile() obj1.outfile.gds.select.3 <- tempfile() glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.3) glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.3) obj1.gds.select.3 <- read.table(obj1.outfile.gds.select.3, obj1.gds.select.3 <- read.table(obj1.outfile.gds.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.gds.select.1, obj1.gds.select.3) expect_equal(obj1.gds.select.1, obj1.gds.select.3) } } obj1.outfile.txt.select.3 <- tempfile() obj1.outfile.txt.select.3 <- tempfile() glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.3, glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj1.txt.select.3 <- read.table(obj1.outfile.txt.select.3, obj1.txt.select.3 <- read.table(obj1.outfile.txt.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt.select.1, obj1.txt.select.3) expect_equal(obj1.txt.select.1, obj1.txt.select.3) obj1.outfile.txt1.select.3 <- tempfile() obj1.outfile.txt1.select.3 <- tempfile() glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.3, glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj1.txt1.select.3 <- read.table(obj1.outfile.txt1.select.3, obj1.txt1.select.3 <- read.table(obj1.outfile.txt1.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt1.select.1, obj1.txt1.select.3) expect_equal(obj1.txt1.select.1, obj1.txt1.select.3) obj1.outfile.txt2.select.3 <- tempfile() obj1.outfile.txt2.select.3 <- tempfile() glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.3, glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj1.txt2.select.3 <- read.table(obj1.outfile.txt2.select.3, obj1.txt2.select.3 <- read.table(obj1.outfile.txt2.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt2.select.1, obj1.txt2.select.3) expect_equal(obj1.txt2.select.1, obj1.txt2.select.3) obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, id = "id", family = binomial(link = "logit"), method = "REML", id = "id", family = binomial(link = "logit"), method = "REML", method.optim = "AI") method.optim = "AI") select <- match(1:400, unique(obj2$id_include)) select <- match(1:400, unique(obj2$id_include)) select[is.na(select)] <- 0 select[is.na(select)] <- 0 obj2.outfile.bed.noselect.3 <- tempfile() obj2.outfile.bed.noselect.3 <- tempfile() glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.3) glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.3) obj2.bed.noselect.3 <- read.table(obj2.outfile.bed.noselect.3, obj2.bed.noselect.3 <- read.table(obj2.outfile.bed.noselect.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.3) expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.3) obj2.outfile.bed.select.3 <- tempfile() obj2.outfile.bed.select.3 <- tempfile() glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.3) glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.3) obj2.bed.select.3 <- read.table(obj2.outfile.bed.select.3, obj2.bed.select.3 <- read.table(obj2.outfile.bed.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bed.select.1, obj2.bed.select.3) expect_equal(obj2.bed.select.1, obj2.bed.select.3) obj2.outfile.bgen.noselect.3 <- tempfile() obj2.outfile.bgen.noselect.3 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, outfile = obj2.outfile.bgen.noselect.3) outfile = obj2.outfile.bgen.noselect.3) obj2.bgen.noselect.3 <- read.table(obj2.outfile.bgen.noselect.3, obj2.bgen.noselect.3 <- read.table(obj2.outfile.bgen.noselect.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.3) expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.3) obj2.outfile.bgen.select.3 <- tempfile() obj2.outfile.bgen.select.3 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, select = select, outfile = obj2.outfile.bgen.select.3) select = select, outfile = obj2.outfile.bgen.select.3) obj2.bgen.select.3 <- read.table(obj2.outfile.bgen.select.3, obj2.bgen.select.3 <- read.table(obj2.outfile.bgen.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.bgen.select.1, obj2.bgen.select.3) expect_equal(obj2.bgen.select.1, obj2.bgen.select.3) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", quietly = TRUE)) { quietly = TRUE)) { obj2.outfile.gds.noselect.3 <- tempfile() obj2.outfile.gds.noselect.3 <- tempfile() glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.3) glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.3) obj2.gds.noselect.3 <- read.table(obj2.outfile.gds.noselect.3, obj2.gds.noselect.3 <- read.table(obj2.outfile.gds.noselect.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.gds.noselect.1, obj2.gds.noselect.3) expect_equal(obj2.gds.noselect.1, obj2.gds.noselect.3) obj2.outfile.gds.select.3 <- tempfile() obj2.outfile.gds.select.3 <- tempfile() glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.3) glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.3) obj2.gds.select.3 <- read.table(obj2.outfile.gds.select.3, obj2.gds.select.3 <- read.table(obj2.outfile.gds.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.gds.select.1, obj2.gds.select.3) expect_equal(obj2.gds.select.1, obj2.gds.select.3) } } obj2.outfile.txt.select.3 <- tempfile() obj2.outfile.txt.select.3 <- tempfile() glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.3, glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt.select.3 <- read.table(obj2.outfile.txt.select.3, obj2.txt.select.3 <- read.table(obj2.outfile.txt.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt.select.1, obj2.txt.select.3) expect_equal(obj2.txt.select.1, obj2.txt.select.3) obj2.outfile.txt1.select.3 <- tempfile() obj2.outfile.txt1.select.3 <- tempfile() glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.3, glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt1.select.3 <- read.table(obj2.outfile.txt1.select.3, obj2.txt1.select.3 <- read.table(obj2.outfile.txt1.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt1.select.1, obj2.txt1.select.3) expect_equal(obj2.txt1.select.1, obj2.txt1.select.3) obj2.outfile.txt2.select.3 <- tempfile() obj2.outfile.txt2.select.3 <- tempfile() glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.3, glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", select = select, infile.header.print = c("SNP", "Allele1", "Allele2")) "Allele2")) obj2.txt2.select.3 <- read.table(obj2.outfile.txt2.select.3, obj2.txt2.select.3 <- read.table(obj2.outfile.txt2.select.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt2.select.1, obj2.txt2.select.3) expect_equal(obj2.txt2.select.1, obj2.txt2.select.3) unlink(c(obj2.outfile.bed.noselect.1, obj2.outfile.bed.select.1, unlink(c(obj2.outfile.bed.noselect.1, obj2.outfile.bed.select.1, obj2.outfile.bgen.noselect.1, obj2.outfile.bgen.select.1, obj2.outfile.bgen.noselect.1, obj2.outfile.bgen.select.1, obj2.outfile.txt.select.1, obj2.outfile.txt1.select.1, obj2.outfile.txt.select.1, obj2.outfile.txt1.select.1, obj2.outfile.txt2.select.1)) obj2.outfile.txt2.select.1)) unlink(c(obj1.outfile.bed.noselect.2, obj1.outfile.bed.select.2, unlink(c(obj1.outfile.bed.noselect.2, obj1.outfile.bed.select.2, obj1.outfile.bgen.noselect.2, obj1.outfile.bgen.select.2, obj1.outfile.bgen.noselect.2, obj1.outfile.bgen.select.2, obj1.outfile.txt.select.2, obj1.outfile.txt1.select.2, obj1.outfile.txt.select.2, obj1.outfile.txt1.select.2, obj1.outfile.txt2.select.2)) obj1.outfile.txt2.select.2)) unlink(c(obj2.outfile.bed.noselect.2, obj2.outfile.bed.select.2, unlink(c(obj2.outfile.bed.noselect.2, obj2.outfile.bed.select.2, obj2.outfile.bgen.noselect.2, obj2.outfile.bgen.select.2, obj2.outfile.bgen.noselect.2, obj2.outfile.bgen.select.2, obj2.outfile.txt.select.2, obj2.outfile.txt1.select.2, obj2.outfile.txt.select.2, obj2.outfile.txt1.select.2, obj2.outfile.txt2.select.2)) obj2.outfile.txt2.select.2)) unlink(c(obj1.outfile.bed.noselect.3, obj1.outfile.bed.select.3, unlink(c(obj1.outfile.bed.noselect.3, obj1.outfile.bed.select.3, obj1.outfile.bgen.noselect.3, obj1.outfile.bgen.select.3, obj1.outfile.bgen.noselect.3, obj1.outfile.bgen.select.3, obj1.outfile.txt.select.3, obj1.outfile.txt1.select.3, obj1.outfile.txt.select.3, obj1.outfile.txt1.select.3, obj1.outfile.txt2.select.3)) obj1.outfile.txt2.select.3)) unlink(c(obj2.outfile.bed.noselect.3, obj2.outfile.bed.select.3, unlink(c(obj2.outfile.bed.noselect.3, obj2.outfile.bed.select.3, obj2.outfile.bgen.noselect.3, obj2.outfile.bgen.select.3, obj2.outfile.bgen.noselect.3, obj2.outfile.bgen.select.3, obj2.outfile.txt.select.3, obj2.outfile.txt1.select.3, obj2.outfile.txt.select.3, obj2.outfile.txt1.select.3, obj2.outfile.txt2.select.3)) obj2.outfile.txt2.select.3)) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", quietly = TRUE)) quietly = TRUE)) unlink(c(obj2.outfile.gds.noselect.1, obj2.outfile.gds.select.1, unlink(c(obj2.outfile.gds.noselect.1, obj2.outfile.gds.select.1, obj1.outfile.gds.noselect.2, obj1.outfile.gds.select.2, obj1.outfile.gds.noselect.2, obj1.outfile.gds.select.2, obj2.outfile.gds.noselect.2, obj2.outfile.gds.select.2, obj2.outfile.gds.noselect.2, obj2.outfile.gds.select.2, obj1.outfile.gds.noselect.3, obj1.outfile.gds.select.3, obj1.outfile.gds.noselect.3, obj1.outfile.gds.select.3, obj2.outfile.gds.noselect.3, obj2.outfile.gds.select.3)) obj2.outfile.gds.noselect.3, obj2.outfile.gds.select.3))})})
33: 33: eval(code, test_env)eval(code, test_env)
34: 34: eval(code, test_env)eval(code, test_env)
35: 35: withCallingHandlers({withCallingHandlers({ eval(code, test_env) eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { if (snapshot_skipped) { skip("On CRAN") skip("On CRAN") } } else if (!new_expectations && skip_on_empty) { else if (!new_expectations && skip_on_empty) { skip_empty() skip_empty() } }}, expectation = handle_expectation, packageNotFoundError = function(e) {}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) skip(paste0("{", e$package, "} is not installed.")) } }}, snapshot_on_cran = function(cnd) {}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot") invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, }, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt) error = handle_error, interrupt = handle_interrupt)
36: 36: doTryCatch(return(expr), name, parentenv, handler)doTryCatch(return(expr), name, parentenv, handler)
37: 37: tryCatchOne(expr, names, parentenv, handlers[[1L]])tryCatchOne(expr, names, parentenv, handlers[[1L]])
38: 38: tryCatchList(expr, classes, parentenv, handlers)tryCatchList(expr, classes, parentenv, handlers)
39: 39: tryCatch(withCallingHandlers({tryCatch(withCallingHandlers({ eval(code, test_env) eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { if (snapshot_skipped) { skip("On CRAN") skip("On CRAN") } } else if (!new_expectations && skip_on_empty) { else if (!new_expectations && skip_on_empty) { skip_empty() skip_empty() } }}, expectation = handle_expectation, packageNotFoundError = function(e) {}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) skip(paste0("{", e$package, "} is not installed.")) } }}, snapshot_on_cran = function(cnd) {}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot") invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, }, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal) error = handle_error, interrupt = handle_interrupt), error = handle_fatal)
40: 40: doWithOneRestart(return(expr), restart)doWithOneRestart(return(expr), restart)
41: 41: withOneRestart(expr, restarts[[1L]])withOneRestart(expr, restarts[[1L]])
42: 42: withRestarts(tryCatch(withCallingHandlers({withRestarts(tryCatch(withCallingHandlers({ eval(code, test_env) eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { if (snapshot_skipped) { skip("On CRAN") skip("On CRAN") } } else if (!new_expectations && skip_on_empty) { else if (!new_expectations && skip_on_empty) { skip_empty() skip_empty() } }}, expectation = handle_expectation, packageNotFoundError = function(e) {}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) skip(paste0("{", e$package, "} is not installed.")) } }}, snapshot_on_cran = function(cnd) {}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot") invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, }, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal), error = handle_error, interrupt = handle_interrupt), error = handle_fatal), end_test = function() { end_test = function() { }) })
43: 43: test_code(code = exprs, env = env, reporter = get_reporter() %||% test_code(code = exprs, env = env, reporter = get_reporter() %||% StopReporter$new()) StopReporter$new())
44: 44: source_file(path, env = env(env), desc = desc, shuffle = shuffle, source_file(path, env = env(env), desc = desc, shuffle = shuffle, error_call = error_call) error_call = error_call)
45: 45: FUN(X[[i]], ...)FUN(X[[i]], ...)
46: 46: lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call) error_call = error_call)
47: 47: doTryCatch(return(expr), name, parentenv, handler)doTryCatch(return(expr), name, parentenv, handler)
48: 48: tryCatchOne(expr, names, parentenv, handlers[[1L]])tryCatchOne(expr, names, parentenv, handlers[[1L]])
49: 49: tryCatchList(expr, classes, parentenv, handlers)tryCatchList(expr, classes, parentenv, handlers)
50: 50: tryCatch(code, testthat_abort_reporter = function(cnd) {tryCatch(code, testthat_abort_reporter = function(cnd) { cat(conditionMessage(cnd), "\n") cat(conditionMessage(cnd), "\n") NULL NULL})})
51: 51: with_reporter(reporters$multi, lapply(test_paths, test_one_file, with_reporter(reporters$multi, lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call)) env = env, desc = desc, shuffle = shuffle, error_call = error_call))
52: 52: test_files_serial(test_dir = test_dir, test_package = test_package, test_files_serial(test_dir = test_dir, test_package = test_package, test_paths = test_paths, load_helpers = load_helpers, reporter = reporter, test_paths = test_paths, load_helpers = load_helpers, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, desc = desc, load_package = load_package, shuffle = shuffle, desc = desc, load_package = load_package, shuffle = shuffle, error_call = error_call) error_call = error_call)
53: 53: test_files(test_dir = path, test_paths = test_paths, test_package = package, test_files(test_dir = path, test_paths = test_paths, test_package = package, reporter = reporter, load_helpers = load_helpers, env = env, reporter = reporter, load_helpers = load_helpers, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, load_package = load_package, parallel = parallel, shuffle = shuffle) load_package = load_package, parallel = parallel, shuffle = shuffle)
54: 54: test_dir("testthat", package = package, reporter = reporter, test_dir("testthat", package = package, reporter = reporter, ..., load_package = "installed") ..., load_package = "installed")
55: 55: test_check("GMMAT")test_check("GMMAT")
An irrecoverable exception occurred. R is aborting now ...
An irrecoverable exception occurred. R is aborting now ...
Saving _problems/test_glmm.score-37.R
The following SNPs have been removed due to inconsistent alleles across studies:
[1] "L10" "L12" "L15"
[ FAIL 1 | WARN 2 | SKIP 30 | PASS 3 ]
══ Skipped tests (30) ══════════════════════════════════════════════════════════
• On CRAN (28): 'test_SMMAT.R:56:2', 'test_SMMAT.R:103:2',
'test_SMMAT.R:149:2', 'test_SMMAT.R:196:2', 'test_SMMAT.R:236:2',
'test_SMMAT.R:276:2', 'test_SMMAT.meta.R:45:2', 'test_SMMAT.meta.R:77:2',
'test_SMMAT.meta.R:108:2', 'test_SMMAT.meta.R:140:2',
'test_SMMAT.meta.R:165:2', 'test_glmm.score.R:317:2',
'test_glmm.score.R:616:2', 'test_glmm.score.R:914:2',
'test_glmm.score.R:1213:2', 'test_glmm.score.R:1505:2',
'test_glmm.score.R:1797:2', 'test_glmm.wald.R:2:2', 'test_glmm.wald.R:805:2',
'test_glmm.wald.R:1609:2', 'test_glmm.wald.R:1761:2', 'test_glmmkin.R:2:2',
'test_glmmkin.R:82:2', 'test_glmmkin.R:163:2', 'test_glmmkin.R:245:2',
'test_glmmkin.R:328:2', 'test_glmmkin.R:362:2', 'test_glmmkin.R:396:2'
• {SeqArray} is not installed (2): 'test_SMMAT.R:2:9', 'test_SMMAT.meta.R:2:2'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test_glmm.score.R:37:2'): cross-sectional id le 400 binomial ────────
Error in `file(outfile, "w")`: cannot open the connection
Backtrace:
▆
1. └─GMMAT::glmm.score(...) at test_glmm.score.R:37:9
2. └─base::file(outfile, "w")
[ FAIL 1 | WARN 2 | SKIP 30 | PASS 3 ]
Error:
! Test failures.
Execution halted
Flavor: r-oldrel-macos-arm64