CRAN Package Check Results for Package GMMAT

Last updated on 2026-10-21 11:59:08 CEST.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 1.5.0 43.86 234.23 278.09 OK
r-devel-linux-x86_64-debian-gcc 1.5.0 40.00 213.18 253.18 OK
r-devel-linux-x86_64-fedora-clang 1.5.0 29.00 158.92 187.92 OK
r-devel-linux-x86_64-fedora-gcc 1.5.0 42.00 163.82 205.82 OK
r-devel-windows-x86_64 1.5.0 70.00 392.00 462.00 OK
r-patched-linux-x86_64 1.5.0 51.56 239.28 290.84 OK
r-release-linux-x86_64 1.5.0 52.75 232.73 285.48 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 66.00 309.00 375.00 OK
r-oldrel-macos-arm64 1.5.0 16.00 81.00 97.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 91.00 410.00 501.00 OK

Check Details

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) 2: eval(c.expr, envir = args, enclos = envir) 3: doTryCatch(return(expr), name, parentenv, handler) 4: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5: tryCatchList(expr, classes, parentenv, handlers) 6: tryCatch(eval(c.expr, envir = args, enclos = envir), error = function(e) e) 7: FUN(X[[i]], ...) 8: lapply(X = S, FUN = FUN, ...) 9: doTryCatch(return(expr), name, parentenv, handler) 10: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11: tryCatchList(expr, classes, parentenv, handlers) 12: tryCatch(expr, error = function(e) { call <- conditionCall(e) if (!is.null(call)) { if (identical(call[[1L]], quote(doTryCatch))) call <- sys.call(-4L) Traceback: dcall <- deparse(call, nlines = 1L) 1: prefix <- paste("Error in", dcall, ": ")eval(c.expr, envir = args, enclos = envir) LONG <- 75L sm <- strsplit(conditionMessage(e), "\n")[[1L]] 2: w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w")eval(c.expr, envir = args, enclos = envir) if (is.na(w)) w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L], 3: type = "b")doTryCatch(return(expr), name, parentenv, handler) if (w > LONG) prefix <- paste0(prefix, "\n ") 4: }tryCatchOne(expr, names, parentenv, handlers[[1L]]) else prefix <- "Error : " msg <- paste0(prefix, conditionMessage(e), "\n") .Internal(seterrmessage(msg[1L])) if (!silent && isTRUE(getOption("show.error.messages"))) { 5: cat(msg, file = outFile)tryCatchList(expr, classes, parentenv, handlers) .Internal(printDeferredWarnings()) } 6: invisible(structure(msg, class = "try-error", condition = e))tryCatch(eval(c.expr, envir = args, enclos = envir), error = function(e) e)}) 7: 13: try(lapply(X = S, FUN = FUN, ...), silent = TRUE)FUN(X[[i]], ...) 14: 8: sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE))lapply(X = S, FUN = FUN, ...) 15: 9: FUN(X[[i]], ...)doTryCatch(return(expr), name, parentenv, handler) 16: 10: lapply(seq_len(cores), inner.do)tryCatchOne(expr, names, parentenv, handlers[[1L]]) 17: 11: mclapply(argsList, FUN, mc.preschedule = preschedule, mc.set.seed = set.seed, tryCatchList(expr, classes, parentenv, handlers) mc.silent = silent, mc.cores = cores) 12: 18: tryCatch(expr, error = function(e) {e$fun(obj, substitute(ex), parent.frame(), e$data) call <- conditionCall(e) if (!is.null(call)) {19: if (identical(call[[1L]], quote(doTryCatch))) foreach(i = 1:ncores) %dopar% { call <- sys.call(-4L) if (!is.null(obj$P)) { dcall <- deparse(call, nlines = 1L) if (bgenInfo$LayoutFlag == 2) { prefix <- paste("Error in", dcall, ": ") .Call(C_glmm_score_bgen13, as.numeric(res), obj$P, LONG <- 75L infile, paste0(outfile, "_tmp.", i), center2, sm <- strsplit(conditionMessage(e), "\n")[[1L]] MAF.range[1], MAF.range[2], miss.cutoff, miss.method, w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w") nperbatch, select, threadInfo$begin[i], threadInfo$end[i], if (is.na(w)) threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L], 1) type = "b") } if (w > LONG) else { prefix <- paste0(prefix, "\n ") .Call(C_glmm_score_bgen11, as.numeric(res), obj$P, } infile, paste0(outfile, "_tmp.", i), center2, else prefix <- "Error : " MAF.range[1], MAF.range[2], miss.cutoff, miss.method, msg <- paste0(prefix, conditionMessage(e), "\n") nperbatch, select, threadInfo$begin[i], threadInfo$end[i], .Internal(seterrmessage(msg[1L])) threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, if (!silent && isTRUE(getOption("show.error.messages"))) { 1) cat(msg, file = outFile) } .Internal(printDeferredWarnings()) } } else { invisible(structure(msg, class = "try-error", condition = e)) if (bgenInfo$LayoutFlag == 2) {}) .Call(C_glmm_score_bgen13_sp, as.numeric(res), obj$Sigma_i, obj$Sigma_iX, obj$cov, infile, paste0(outfile, 13: "_tmp.", i), center2, MAF.range[1], MAF.range[2], try(lapply(X = S, FUN = FUN, ...), silent = TRUE) miss.cutoff, miss.method, nperbatch, select, threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], 14: bgenInfo$N, bgenInfo$CompressionFlag, 1)sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE)) } else {15: .Call(C_glmm_score_bgen11_sp, as.numeric(res), obj$Sigma_i, FUN(X[[i]], ...) obj$Sigma_iX, obj$cov, infile, paste0(outfile, "_tmp.", i), center2, MAF.range[1], MAF.range[2], 16: miss.cutoff, miss.method, nperbatch, select, lapply(seq_len(cores), inner.do) threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, 1)17: }mclapply(argsList, FUN, mc.preschedule = preschedule, mc.set.seed = set.seed, mc.silent = silent, mc.cores = cores) } }18: e$fun(obj, substitute(ex), parent.frame(), e$data) 20: 19: glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, foreach(i = 1:ncores) %dopar% { outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2) if (!is.null(obj$P)) { if (bgenInfo$LayoutFlag == 2) { .Call(C_glmm_score_bgen13, as.numeric(res), obj$P, 21: infile, paste0(outfile, "_tmp.", i), center2, eval(code, test_env) MAF.range[1], MAF.range[2], miss.cutoff, miss.method, nperbatch, select, threadInfo$begin[i], threadInfo$end[i], 22: threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, eval(code, test_env) 1) }23: else {withCallingHandlers({ .Call(C_glmm_score_bgen11, as.numeric(res), obj$P, eval(code, test_env) infile, paste0(outfile, "_tmp.", i), center2, new_expectations <- the$test_expectations > starting_expectations MAF.range[1], MAF.range[2], miss.cutoff, miss.method, if (snapshot_skipped) { nperbatch, select, threadInfo$begin[i], threadInfo$end[i], skip("On CRAN") threadInfo$pos[i], bgenInfo$N, bgenInfo$CompressionFlag, 1) } else if (!new_expectations && skip_on_empty) { } skip_empty() } } else {}, expectation = handle_expectation, packageNotFoundError = function(e) { if (bgenInfo$LayoutFlag == 2) { if (on_cran()) { .Call(C_glmm_score_bgen13_sp, as.numeric(res), obj$Sigma_i, obj$Sigma_iX, obj$cov, infile, paste0(outfile, skip(paste0("{", e$package, "} is not installed.")) "_tmp.", i), center2, MAF.range[1], MAF.range[2], } miss.cutoff, miss.method, nperbatch, select, }, snapshot_on_cran = function(cnd) { threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], snapshot_skipped <<- TRUE bgenInfo$N, bgenInfo$CompressionFlag, 1) invokeRestart("muffle_cran_snapshot") }}, skip = handle_skip, warning = handle_warning, message = handle_message, else { error = handle_error, interrupt = handle_interrupt) .Call(C_glmm_score_bgen11_sp, as.numeric(res), obj$Sigma_i, 24: obj$Sigma_iX, obj$cov, infile, paste0(outfile, doTryCatch(return(expr), name, parentenv, handler) "_tmp.", i), center2, MAF.range[1], MAF.range[2], miss.cutoff, miss.method, nperbatch, select, 25: threadInfo$begin[i], threadInfo$end[i], threadInfo$pos[i], tryCatchOne(expr, names, parentenv, handlers[[1L]]) bgenInfo$N, bgenInfo$CompressionFlag, 1) }26: }tryCatchList(expr, classes, parentenv, handlers)} 27: 20: tryCatch(withCallingHandlers({glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, eval(code, test_env) outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) {21: skip("On CRAN")eval(code, test_env) } else if (!new_expectations && skip_on_empty) {22: skip_empty()eval(code, test_env) } }, expectation = handle_expectation, packageNotFoundError = function(e) {23: if (on_cran()) {withCallingHandlers({ skip(paste0("{", e$package, "} is not installed.")) eval(code, test_env) } new_expectations <- the$test_expectations > starting_expectations}, snapshot_on_cran = function(cnd) { if (snapshot_skipped) { snapshot_skipped <<- TRUE skip("On CRAN") invokeRestart("muffle_cran_snapshot") }}, skip = handle_skip, warning = handle_warning, message = handle_message, else if (!new_expectations && skip_on_empty) { error = handle_error, interrupt = handle_interrupt), error = handle_fatal) skip_empty() }28: }, expectation = handle_expectation, packageNotFoundError = function(e) {doWithOneRestart(return(expr), restart) if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }29: }, snapshot_on_cran = function(cnd) {withOneRestart(expr, restarts[[1L]]) snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")30: }, skip = handle_skip, warning = handle_warning, message = handle_message, withRestarts(tryCatch(withCallingHandlers({ error = handle_error, interrupt = handle_interrupt) eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations24: if (snapshot_skipped) {doTryCatch(return(expr), name, parentenv, handler) skip("On CRAN") }25: else if (!new_expectations && skip_on_empty) {tryCatchOne(expr, names, parentenv, handlers[[1L]]) skip_empty() }26: }, expectation = handle_expectation, packageNotFoundError = function(e) {tryCatchList(expr, classes, parentenv, handlers) if (on_cran()) { skip(paste0("{", e$package, "} is not installed."))27: tryCatch(withCallingHandlers({ } eval(code, test_env)}, snapshot_on_cran = function(cnd) { new_expectations <- the$test_expectations > starting_expectations snapshot_skipped <<- TRUE if (snapshot_skipped) { invokeRestart("muffle_cran_snapshot") skip("On CRAN")}, skip = handle_skip, warning = handle_warning, message = handle_message, } error = handle_error, interrupt = handle_interrupt), error = handle_fatal), else if (!new_expectations && skip_on_empty) { end_test = function() { skip_empty() }) } }, expectation = handle_expectation, packageNotFoundError = function(e) {31: if (on_cran()) {test_code(code, parent.frame()) skip(paste0("{", e$package, "} is not installed.")) }32: }, snapshot_on_cran = function(cnd) {test_that("cross-sectional id le 400 binomial", { snapshot_skipped <<- TRUE plinkfiles <- strsplit(system.file("extdata", "geno.bed", invokeRestart("muffle_cran_snapshot") package = "GMMAT"), ".bed", fixed = TRUE)[[1]]}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal) bgenfile <- system.file("extdata", "geno.bgen", package = "GMMAT") samplefile <- system.file("extdata", "geno.sample", package = "GMMAT")28: gdsfile <- system.file("extdata", "geno.gds", package = "GMMAT")doWithOneRestart(return(expr), restart) txtfile <- system.file("extdata", "geno.txt", package = "GMMAT") txtfile1 <- system.file("extdata", "geno.txt.gz", package = "GMMAT")29: txtfile2 <- system.file("extdata", "geno.txt.bz2", package = "GMMAT")withOneRestart(expr, restarts[[1L]]) data(example) suppressWarnings(RNGversion("3.5.0"))30: set.seed(123)withRestarts(tryCatch(withCallingHandlers({ pheno <- rbind(example$pheno, example$pheno[1:100, ]) eval(code, test_env) pheno$id <- 1:500 new_expectations <- the$test_expectations > starting_expectations pheno$disease[sample(1:500, 20)] <- NA if (snapshot_skipped) { pheno$age[sample(1:500, 20)] <- NA skip("On CRAN") pheno$sex[sample(1:500, 20)] <- NA } pheno <- pheno[sample(1:500, 450), ] else if (!new_expectations && skip_on_empty) { pheno <- pheno[pheno$id <= 400, ] skip_empty() kins <- example$GRM } obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, }, expectation = handle_expectation, packageNotFoundError = function(e) { id = "id", family = binomial(link = "logit"), method = "REML", if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) method.optim = "AI") } select <- match(1:400, unique(obj1$id_include))}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE select[is.na(select)] <- 0 invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, obj1.outfile.bed.noselect.1 <- tempfile() glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1) error = handle_error, interrupt = handle_interrupt), error = handle_fatal), end_test = function() { obj1.bed.noselect.1 <- read.table(obj1.outfile.bed.noselect.1, }) header = TRUE, as.is = TRUE) obj1.outfile.bed.noselect.1.tmp <- tempfile()31: expect_error(glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1.tmp, test_code(code, parent.frame()) ncores = 2), "Error: parallel computing currently not implemented for PLINK binary format genotypes.") unlink(obj1.outfile.bed.noselect.1.tmp)32: obj1.outfile.bed.select.1 <- tempfile()test_that("cross-sectional id le 400 binomial", { glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.1) plinkfiles <- strsplit(system.file("extdata", "geno.bed", package = "GMMAT"), ".bed", fixed = TRUE)[[1]] obj1.bed.select.1 <- read.table(obj1.outfile.bed.select.1, bgenfile <- system.file("extdata", "geno.bgen", package = "GMMAT") header = TRUE, as.is = TRUE) samplefile <- system.file("extdata", "geno.sample", package = "GMMAT") expect_equal(obj1.bed.noselect.1, obj1.bed.select.1) gdsfile <- system.file("extdata", "geno.gds", package = "GMMAT") obj1.outfile.bgen.noselect.1 <- tempfile() txtfile <- system.file("extdata", "geno.txt", package = "GMMAT") glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, txtfile1 <- system.file("extdata", "geno.txt.gz", package = "GMMAT") outfile = obj1.outfile.bgen.noselect.1) txtfile2 <- system.file("extdata", "geno.txt.bz2", package = "GMMAT") obj1.bgen.noselect.1 <- read.table(obj1.outfile.bgen.noselect.1, data(example) header = TRUE, as.is = TRUE) suppressWarnings(RNGversion("3.5.0")) obj1.outfile.bgen.noselect.1.tmp <- tempfile() set.seed(123) glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, pheno <- rbind(example$pheno, example$pheno[1:100, ]) outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2) pheno$id <- 1:500 pheno$disease[sample(1:500, 20)] <- NA obj1.bgen.noselect.1.tmp <- read.table(obj1.outfile.bgen.noselect.1.tmp, pheno$age[sample(1:500, 20)] <- NA header = TRUE, as.is = TRUE) pheno$sex[sample(1:500, 20)] <- NA expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.1.tmp) pheno <- pheno[sample(1:500, 450), ] unlink(obj1.outfile.bgen.noselect.1.tmp) pheno <- pheno[pheno$id <= 400, ] kins <- example$GRM obj1.outfile.bgen.select.1 <- tempfile() obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, id = "id", family = binomial(link = "logit"), method = "REML", select = select, outfile = obj1.outfile.bgen.select.1) method.optim = "AI") obj1.bgen.select.1 <- read.table(obj1.outfile.bgen.select.1, select <- match(1:400, unique(obj1$id_include)) header = TRUE, as.is = TRUE) select[is.na(select)] <- 0 obj1.outfile.bed.noselect.1 <- tempfile() expect_equal(obj1.bgen.noselect.1, obj1.bgen.select.1) glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1) expect_equal(obj1.bed.select.1[, c("SNP", "CHR", "POS", "A1", obj1.bed.noselect.1 <- read.table(obj1.outfile.bed.noselect.1, "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj1.bgen.select.1[, header = TRUE, as.is = TRUE) c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", obj1.outfile.bed.noselect.1.tmp <- tempfile() "VAR", "PVAL")]) expect_error(glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.1.tmp, if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", ncores = 2), "Error: parallel computing currently not implemented for PLINK binary format genotypes.") quietly = TRUE)) { unlink(obj1.outfile.bed.noselect.1.tmp) obj1.outfile.gds.noselect.1 <- tempfile() obj1.outfile.bed.select.1 <- tempfile() glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1) glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.1) obj1.gds.noselect.1 <- read.table(obj1.outfile.gds.noselect.1, obj1.bed.select.1 <- read.table(obj1.outfile.bed.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) obj1.outfile.gds.noselect.1.tmp <- tempfile() expect_equal(obj1.bed.noselect.1, obj1.bed.select.1) glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1.tmp, obj1.outfile.bgen.noselect.1 <- tempfile() ncores = 2) glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, obj1.gds.noselect.1.tmp <- read.table(obj1.outfile.gds.noselect.1.tmp, outfile = obj1.outfile.bgen.noselect.1) header = TRUE, as.is = TRUE) obj1.bgen.noselect.1 <- read.table(obj1.outfile.bgen.noselect.1, expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.1.tmp) header = TRUE, as.is = TRUE) obj1.outfile.bgen.noselect.1.tmp <- tempfile() unlink(obj1.outfile.gds.noselect.1.tmp) glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, obj1.outfile.gds.select.1 <- tempfile() outfile = obj1.outfile.bgen.noselect.1.tmp, ncores = 2) glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.1) obj1.bgen.noselect.1.tmp <- read.table(obj1.outfile.bgen.noselect.1.tmp, obj1.gds.select.1 <- read.table(obj1.outfile.gds.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.1.tmp) expect_equal(obj1.gds.noselect.1, obj1.gds.select.1) unlink(obj1.outfile.bgen.noselect.1.tmp) expect_equal(obj1.bed.select.1$PVAL, signif(obj1.gds.select.1$PVAL)) obj1.outfile.bgen.select.1 <- tempfile() expect_equal(signif(range(obj1.gds.select.1$PVAL)), signif(c(0.003804942, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, 0.986534857))) select = select, outfile = obj1.outfile.bgen.select.1) unlink(c(obj1.outfile.gds.noselect.1, obj1.outfile.gds.select.1)) obj1.bgen.select.1 <- read.table(obj1.outfile.bgen.select.1, } header = TRUE, as.is = TRUE) obj1.outfile.txt.select.1 <- tempfile() expect_equal(obj1.bgen.noselect.1, obj1.bgen.select.1) glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1, expect_equal(obj1.bed.select.1[, c("SNP", "CHR", "POS", "A1", infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj1.bgen.select.1[, select = select, infile.header.print = c("SNP", "Allele1", c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", "Allele2")) "VAR", "PVAL")]) obj1.txt.select.1 <- read.table(obj1.outfile.txt.select.1, if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", header = TRUE, as.is = TRUE) quietly = TRUE)) { expect_equal(obj1.bed.select.1$PVAL, obj1.txt.select.1$PVAL) obj1.outfile.gds.noselect.1 <- tempfile() obj1.outfile.txt.select.1.tmp <- tempfile() glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1) expect_error(glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1.tmp, obj1.gds.noselect.1 <- read.table(obj1.outfile.gds.noselect.1, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, header = TRUE, as.is = TRUE) select = select, infile.header.print = c("SNP", "Allele1", obj1.outfile.gds.noselect.1.tmp <- tempfile() "Allele2"), ncores = 2), "Error: parallel computing currently not implemented for plain text format genotypes.") glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.1.tmp, ncores = 2) unlink(obj1.outfile.txt.select.1.tmp) obj1.gds.noselect.1.tmp <- read.table(obj1.outfile.gds.noselect.1.tmp, obj1.outfile.txt1.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.1, expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.1.tmp) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, unlink(obj1.outfile.gds.noselect.1.tmp) select = select, infile.header.print = c("SNP", "Allele1", obj1.outfile.gds.select.1 <- tempfile() "Allele2")) glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.1) obj1.txt1.select.1 <- read.table(obj1.outfile.txt1.select.1, obj1.gds.select.1 <- read.table(obj1.outfile.gds.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt.select.1, obj1.txt1.select.1) expect_equal(obj1.gds.noselect.1, obj1.gds.select.1) expect_equal(obj1.bed.select.1$PVAL, signif(obj1.gds.select.1$PVAL)) obj1.outfile.txt2.select.1 <- tempfile() expect_equal(signif(range(obj1.gds.select.1$PVAL)), signif(c(0.003804942, glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.1, 0.986534857))) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, unlink(c(obj1.outfile.gds.noselect.1, obj1.outfile.gds.select.1)) select = select, infile.header.print = c("SNP", "Allele1", } "Allele2")) obj1.outfile.txt.select.1 <- tempfile() obj1.txt2.select.1 <- read.table(obj1.outfile.txt2.select.1, glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1, header = TRUE, as.is = TRUE) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, expect_equal(obj1.txt.select.1, obj1.txt2.select.1) select = select, infile.header.print = c("SNP", "Allele1", unlink(c(obj1.outfile.bed.noselect.1, obj1.outfile.bed.select.1, "Allele2")) obj1.outfile.bgen.noselect.1, obj1.outfile.bgen.select.1, obj1.txt.select.1 <- read.table(obj1.outfile.txt.select.1, obj1.outfile.txt.select.1, obj1.outfile.txt1.select.1, obj1.outfile.txt2.select.1)) skip_on_cran() header = TRUE, as.is = TRUE) obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, expect_equal(obj1.bed.select.1$PVAL, obj1.txt.select.1$PVAL) id = "id", family = binomial(link = "logit"), method = "REML", obj1.outfile.txt.select.1.tmp <- tempfile() method.optim = "AI") expect_error(glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.1.tmp, select <- match(1:400, unique(obj2$id_include)) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select[is.na(select)] <- 0 select = select, infile.header.print = c("SNP", "Allele1", obj2.outfile.bed.noselect.1 <- tempfile() "Allele2"), ncores = 2), "Error: parallel computing currently not implemented for plain text format genotypes.") glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.1) unlink(obj1.outfile.txt.select.1.tmp) obj2.bed.noselect.1 <- read.table(obj2.outfile.bed.noselect.1, obj1.outfile.txt1.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.1, obj2.outfile.bed.select.1 <- tempfile() infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.1) select = select, infile.header.print = c("SNP", "Allele1", obj2.bed.select.1 <- read.table(obj2.outfile.bed.select.1, "Allele2")) obj1.txt1.select.1 <- read.table(obj1.outfile.txt1.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt.select.1, obj1.txt1.select.1) expect_equal(obj2.bed.noselect.1, obj2.bed.select.1) obj1.outfile.txt2.select.1 <- tempfile() obj2.outfile.bgen.noselect.1 <- tempfile() glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.1, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, outfile = obj2.outfile.bgen.noselect.1) select = select, infile.header.print = c("SNP", "Allele1", obj2.bgen.noselect.1 <- read.table(obj2.outfile.bgen.noselect.1, "Allele2")) header = TRUE, as.is = TRUE) obj2.outfile.bgen.select.1 <- tempfile() obj1.txt2.select.1 <- read.table(obj1.outfile.txt2.select.1, header = TRUE, as.is = TRUE) glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, expect_equal(obj1.txt.select.1, obj1.txt2.select.1) select = select, outfile = obj2.outfile.bgen.select.1) unlink(c(obj1.outfile.bed.noselect.1, obj1.outfile.bed.select.1, obj2.bgen.select.1 <- read.table(obj2.outfile.bgen.select.1, obj1.outfile.bgen.noselect.1, obj1.outfile.bgen.select.1, header = TRUE, as.is = TRUE) obj1.outfile.txt.select.1, obj1.outfile.txt1.select.1, expect_equal(obj2.bgen.noselect.1, obj2.bgen.select.1) obj1.outfile.txt2.select.1)) expect_equal(obj2.bed.select.1[, c("SNP", "CHR", "POS", "A1", skip_on_cran() obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj2.bgen.select.1[, id = "id", family = binomial(link = "logit"), method = "REML", c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", method.optim = "AI") "VAR", "PVAL")]) select <- match(1:400, unique(obj2$id_include)) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", select[is.na(select)] <- 0 quietly = TRUE)) { obj2.outfile.bed.noselect.1 <- tempfile() glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.1) obj2.outfile.gds.noselect.1 <- tempfile() obj2.bed.noselect.1 <- read.table(obj2.outfile.bed.noselect.1, glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.1) header = TRUE, as.is = TRUE) obj2.gds.noselect.1 <- read.table(obj2.outfile.gds.noselect.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) obj2.outfile.gds.select.1 <- tempfile() obj2.bed.select.1 <- read.table(obj2.outfile.bed.select.1, glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.1) header = TRUE, as.is = TRUE) obj2.gds.select.1 <- read.table(obj2.outfile.gds.select.1, expect_equal(obj2.bed.noselect.1, obj2.bed.select.1) header = TRUE, as.is = TRUE) obj2.outfile.bgen.noselect.1 <- tempfile() expect_equal(obj2.gds.noselect.1, obj2.gds.select.1) glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, outfile = obj2.outfile.bgen.noselect.1) expect_equal(obj2.bed.select.1$PVAL, signif(obj2.gds.select.1$PVAL)) obj2.bgen.noselect.1 <- read.table(obj2.outfile.bgen.noselect.1, expect_equal(signif(range(obj2.gds.select.1$PVAL)), signif(c(0.003738918, header = TRUE, as.is = TRUE) 0.996996766))) obj2.outfile.bgen.select.1 <- tempfile() } glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, obj2.outfile.txt.select.1 <- tempfile() select = select, outfile = obj2.outfile.bgen.select.1) glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.1, obj2.bgen.select.1 <- read.table(obj2.outfile.bgen.select.1, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, header = TRUE, as.is = TRUE) select = select, infile.header.print = c("SNP", "Allele1", expect_equal(obj2.bgen.noselect.1, obj2.bgen.select.1) "Allele2")) expect_equal(obj2.bed.select.1[, c("SNP", "CHR", "POS", "A1", obj2.txt.select.1 <- read.table(obj2.outfile.txt.select.1, "A2", "N", "AF", "SCORE", "VAR", "PVAL")], obj2.bgen.select.1[, header = TRUE, as.is = TRUE) c("SNP", "CHR", "POS", "A1", "A2", "N", "AF", "SCORE", expect_equal(obj2.bed.select.1$PVAL, obj2.txt.select.1$PVAL) "VAR", "PVAL")]) obj2.outfile.txt1.select.1 <- tempfile() if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.1, quietly = TRUE)) { infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj2.outfile.gds.noselect.1 <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.1) obj2.gds.noselect.1 <- read.table(obj2.outfile.gds.noselect.1, "Allele2")) header = TRUE, as.is = TRUE) obj2.txt1.select.1 <- read.table(obj2.outfile.txt1.select.1, obj2.outfile.gds.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.1) expect_equal(obj2.txt.select.1, obj2.txt1.select.1) obj2.gds.select.1 <- read.table(obj2.outfile.gds.select.1, obj2.outfile.txt2.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.1, expect_equal(obj2.gds.noselect.1, obj2.gds.select.1) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, expect_equal(obj2.bed.select.1$PVAL, signif(obj2.gds.select.1$PVAL)) select = select, infile.header.print = c("SNP", "Allele1", expect_equal(signif(range(obj2.gds.select.1$PVAL)), signif(c(0.003738918, "Allele2")) 0.996996766))) } obj2.txt2.select.1 <- read.table(obj2.outfile.txt2.select.1, obj2.outfile.txt.select.1 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.1, expect_equal(obj2.txt.select.1, obj2.txt2.select.1) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", idx <- sample(nrow(pheno)) pheno <- pheno[idx, ] "Allele2")) obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, id = "id", family = binomial(link = "logit"), method = "REML", obj2.txt.select.1 <- read.table(obj2.outfile.txt.select.1, method.optim = "AI") header = TRUE, as.is = TRUE) expect_equal(obj2.bed.select.1$PVAL, obj2.txt.select.1$PVAL) select <- match(1:400, unique(obj1$id_include)) obj2.outfile.txt1.select.1 <- tempfile() select[is.na(select)] <- 0 glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.1, obj1.outfile.bed.noselect.2 <- tempfile() infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.2) "Allele2")) obj1.bed.noselect.2 <- read.table(obj1.outfile.bed.noselect.2, obj2.txt1.select.1 <- read.table(obj2.outfile.txt1.select.1, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.bed.noselect.1, obj1.bed.noselect.2) obj1.outfile.bed.select.2 <- tempfile() expect_equal(obj2.txt.select.1, obj2.txt1.select.1) glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.2) obj2.outfile.txt2.select.1 <- tempfile() obj1.bed.select.2 <- read.table(obj1.outfile.bed.select.2, glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.1, header = TRUE, as.is = TRUE) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, expect_equal(obj1.bed.select.1, obj1.bed.select.2) obj1.outfile.bgen.noselect.2 <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, "Allele2")) outfile = obj1.outfile.bgen.noselect.2) obj2.txt2.select.1 <- read.table(obj2.outfile.txt2.select.1, obj1.bgen.noselect.2 <- read.table(obj1.outfile.bgen.noselect.2, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj2.txt.select.1, obj2.txt2.select.1) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.2) idx <- sample(nrow(pheno)) obj1.outfile.bgen.select.2 <- tempfile() pheno <- pheno[idx, ] glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, select = select, outfile = obj1.outfile.bgen.select.2) id = "id", family = binomial(link = "logit"), method = "REML", obj1.bgen.select.2 <- read.table(obj1.outfile.bgen.select.2, method.optim = "AI") header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.select.1, obj1.bgen.select.2) select <- match(1:400, unique(obj1$id_include)) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", select[is.na(select)] <- 0 quietly = TRUE)) { obj1.outfile.bed.noselect.2 <- tempfile() obj1.outfile.gds.noselect.2 <- tempfile() glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.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.bed.noselect.2 <- read.table(obj1.outfile.bed.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.bed.noselect.1, obj1.bed.noselect.2) obj1.outfile.gds.select.2 <- tempfile() obj1.outfile.bed.select.2 <- tempfile() glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.2) glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.2) obj1.gds.select.2 <- read.table(obj1.outfile.gds.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.gds.select.1, obj1.gds.select.2) expect_equal(obj1.bed.select.1, obj1.bed.select.2) } obj1.outfile.bgen.noselect.2 <- tempfile() obj1.outfile.txt.select.2 <- tempfile() glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.2, outfile = obj1.outfile.bgen.noselect.2) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.bgen.noselect.2 <- read.table(obj1.outfile.bgen.noselect.2, select = select, infile.header.print = c("SNP", "Allele1", header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.2) "Allele2")) obj1.outfile.bgen.select.2 <- tempfile() obj1.txt.select.2 <- read.table(obj1.outfile.txt.select.2, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) select = select, outfile = obj1.outfile.bgen.select.2) expect_equal(obj1.txt.select.1, obj1.txt.select.2) obj1.bgen.select.2 <- read.table(obj1.outfile.bgen.select.2, obj1.outfile.txt1.select.2 <- tempfile() header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.select.1, obj1.bgen.select.2) glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.2, if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, quietly = TRUE)) { select = select, infile.header.print = c("SNP", "Allele1", obj1.outfile.gds.noselect.2 <- tempfile() "Allele2")) glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.2) obj1.txt1.select.2 <- read.table(obj1.outfile.txt1.select.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.txt1.select.1, obj1.txt1.select.2) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.2) obj1.outfile.gds.select.2 <- tempfile() obj1.outfile.txt2.select.2 <- tempfile() glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.2, glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.2) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1.gds.select.2 <- read.table(obj1.outfile.gds.select.2, select = select, infile.header.print = c("SNP", "Allele1", header = TRUE, as.is = TRUE) "Allele2")) expect_equal(obj1.gds.select.1, obj1.gds.select.2) obj1.txt2.select.2 <- read.table(obj1.outfile.txt2.select.2, } obj1.outfile.txt.select.2 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.2, expect_equal(obj1.txt2.select.1, obj1.txt2.select.2) obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, id = "id", family = binomial(link = "logit"), method = "REML", select = select, infile.header.print = c("SNP", "Allele1", method.optim = "AI") "Allele2")) select <- match(1:400, unique(obj2$id_include)) obj1.txt.select.2 <- read.table(obj1.outfile.txt.select.2, header = TRUE, as.is = TRUE) select[is.na(select)] <- 0 expect_equal(obj1.txt.select.1, obj1.txt.select.2) obj2.outfile.bed.noselect.2 <- tempfile() obj1.outfile.txt1.select.2 <- tempfile() glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.2) glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.2, obj2.bed.noselect.2 <- read.table(obj2.outfile.bed.noselect.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, header = TRUE, as.is = TRUE) select = select, infile.header.print = c("SNP", "Allele1", expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.2) "Allele2")) obj2.outfile.bed.select.2 <- tempfile() obj1.txt1.select.2 <- read.table(obj1.outfile.txt1.select.2, glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.2) header = TRUE, as.is = TRUE) obj2.bed.select.2 <- read.table(obj2.outfile.bed.select.2, expect_equal(obj1.txt1.select.1, obj1.txt1.select.2) header = TRUE, as.is = TRUE) obj1.outfile.txt2.select.2 <- tempfile() expect_equal(obj2.bed.select.1, obj2.bed.select.2) glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.2, obj2.outfile.bgen.noselect.2 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, outfile = obj2.outfile.bgen.noselect.2) select = select, infile.header.print = c("SNP", "Allele1", obj2.bgen.noselect.2 <- read.table(obj2.outfile.bgen.noselect.2, "Allele2")) header = TRUE, as.is = TRUE) obj1.txt2.select.2 <- read.table(obj1.outfile.txt2.select.2, expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.2) header = TRUE, as.is = TRUE) obj2.outfile.bgen.select.2 <- tempfile() expect_equal(obj1.txt2.select.1, obj1.txt2.select.2) obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, id = "id", family = binomial(link = "logit"), method = "REML", method.optim = "AI") select = select, outfile = obj2.outfile.bgen.select.2) select <- match(1:400, unique(obj2$id_include)) obj2.bgen.select.2 <- read.table(obj2.outfile.bgen.select.2, select[is.na(select)] <- 0 header = TRUE, as.is = TRUE) obj2.outfile.bed.noselect.2 <- tempfile() expect_equal(obj2.bgen.select.1, obj2.bgen.select.2) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.2) quietly = TRUE)) { obj2.bed.noselect.2 <- read.table(obj2.outfile.bed.noselect.2, obj2.outfile.gds.noselect.2 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.2) expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.2) obj2.gds.noselect.2 <- read.table(obj2.outfile.gds.noselect.2, obj2.outfile.bed.select.2 <- tempfile() header = TRUE, as.is = TRUE) expect_equal(obj2.gds.noselect.1, obj2.gds.noselect.2) glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.2) obj2.outfile.gds.select.2 <- tempfile() obj2.bed.select.2 <- read.table(obj2.outfile.bed.select.2, glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.2) header = TRUE, as.is = TRUE) obj2.gds.select.2 <- read.table(obj2.outfile.gds.select.2, expect_equal(obj2.bed.select.1, obj2.bed.select.2) header = TRUE, as.is = TRUE) obj2.outfile.bgen.noselect.2 <- tempfile() expect_equal(obj2.gds.select.1, obj2.gds.select.2) glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, } outfile = obj2.outfile.bgen.noselect.2) obj2.outfile.txt.select.2 <- tempfile() obj2.bgen.noselect.2 <- read.table(obj2.outfile.bgen.noselect.2, glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.2, header = TRUE, as.is = TRUE) expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.2) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj2.outfile.bgen.select.2 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, select = select, infile.header.print = c("SNP", "Allele1", select = select, outfile = obj2.outfile.bgen.select.2) "Allele2")) obj2.bgen.select.2 <- read.table(obj2.outfile.bgen.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.bgen.select.1, obj2.bgen.select.2) expect_equal(obj2.txt.select.1, obj2.txt.select.2) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", obj2.outfile.txt1.select.2 <- tempfile() quietly = TRUE)) { glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj2.outfile.gds.noselect.2 <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.2) "Allele2")) obj2.gds.noselect.2 <- read.table(obj2.outfile.gds.noselect.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.gds.noselect.1, obj2.gds.noselect.2) expect_equal(obj2.txt1.select.1, obj2.txt1.select.2) obj2.outfile.gds.select.2 <- tempfile() obj2.outfile.txt2.select.2 <- tempfile() glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.2) glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.2, obj2.gds.select.2 <- read.table(obj2.outfile.gds.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, header = TRUE, as.is = TRUE) select = select, infile.header.print = c("SNP", "Allele1", expect_equal(obj2.gds.select.1, obj2.gds.select.2) "Allele2")) } obj2.txt2.select.2 <- read.table(obj2.outfile.txt2.select.2, obj2.outfile.txt.select.2 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.2, expect_equal(obj2.txt2.select.1, obj2.txt2.select.2) idx <- sample(nrow(kins)) kins <- kins[idx, idx] infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, select = select, infile.header.print = c("SNP", "Allele1", id = "id", family = binomial(link = "logit"), method = "REML", "Allele2")) method.optim = "AI") obj2.txt.select.2 <- read.table(obj2.outfile.txt.select.2, select <- match(1:400, unique(obj1$id_include)) header = TRUE, as.is = TRUE) select[is.na(select)] <- 0 expect_equal(obj2.txt.select.1, obj2.txt.select.2) obj1.outfile.bed.noselect.3 <- tempfile() obj2.outfile.txt1.select.2 <- tempfile() glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.3) glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.2, obj1.bed.noselect.3 <- read.table(obj1.outfile.bed.noselect.3, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, header = TRUE, as.is = TRUE) select = select, infile.header.print = c("SNP", "Allele1", expect_equal(obj1.bed.noselect.1, obj1.bed.noselect.3) "Allele2")) obj1.outfile.bed.select.3 <- tempfile() obj2.txt1.select.2 <- read.table(obj2.outfile.txt1.select.2, glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.3) header = TRUE, as.is = TRUE) expect_equal(obj2.txt1.select.1, obj2.txt1.select.2) obj2.outfile.txt2.select.2 <- tempfile() obj1.bed.select.3 <- read.table(obj1.outfile.bed.select.3, glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.2, header = TRUE, as.is = TRUE) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, expect_equal(obj1.bed.select.1, obj1.bed.select.3) select = select, infile.header.print = c("SNP", "Allele1", obj1.outfile.bgen.noselect.3 <- tempfile() glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, "Allele2")) outfile = obj1.outfile.bgen.noselect.3) obj2.txt2.select.2 <- read.table(obj2.outfile.txt2.select.2, header = TRUE, as.is = TRUE) obj1.bgen.noselect.3 <- read.table(obj1.outfile.bgen.noselect.3, expect_equal(obj2.txt2.select.1, obj2.txt2.select.2) header = TRUE, as.is = TRUE) idx <- sample(nrow(kins)) expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.3) kins <- kins[idx, idx] obj1.outfile.bgen.select.3 <- tempfile() obj1 <- glmmkin(disease ~ age + sex, data = pheno, kins = kins, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, id = "id", family = binomial(link = "logit"), method = "REML", select = select, outfile = obj1.outfile.bgen.select.3) method.optim = "AI") obj1.bgen.select.3 <- read.table(obj1.outfile.bgen.select.3, select <- match(1:400, unique(obj1$id_include)) select[is.na(select)] <- 0 header = TRUE, as.is = TRUE) obj1.outfile.bed.noselect.3 <- tempfile() expect_equal(obj1.bgen.select.1, obj1.bgen.select.3) glmm.score(obj1, infile = plinkfiles, outfile = obj1.outfile.bed.noselect.3) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", obj1.bed.noselect.3 <- read.table(obj1.outfile.bed.noselect.3, quietly = TRUE)) { header = TRUE, as.is = TRUE) obj1.outfile.gds.noselect.3 <- tempfile() expect_equal(obj1.bed.noselect.1, obj1.bed.noselect.3) glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.3) obj1.outfile.bed.select.3 <- tempfile() obj1.gds.noselect.3 <- read.table(obj1.outfile.gds.noselect.3, glmm.score(obj1, infile = plinkfiles, select = select, outfile = obj1.outfile.bed.select.3) header = TRUE, as.is = TRUE) obj1.bed.select.3 <- read.table(obj1.outfile.bed.select.3, header = TRUE, as.is = TRUE) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.3) expect_equal(obj1.bed.select.1, obj1.bed.select.3) obj1.outfile.gds.select.3 <- tempfile() glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.3) obj1.outfile.bgen.noselect.3 <- tempfile() obj1.gds.select.3 <- read.table(obj1.outfile.gds.select.3, header = TRUE, as.is = TRUE) expect_equal(obj1.gds.select.1, obj1.gds.select.3) glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, } outfile = obj1.outfile.bgen.noselect.3) obj1.outfile.txt.select.3 <- tempfile() obj1.bgen.noselect.3 <- read.table(obj1.outfile.bgen.noselect.3, glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.3, header = TRUE, as.is = TRUE) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, expect_equal(obj1.bgen.noselect.1, obj1.bgen.noselect.3) select = select, infile.header.print = c("SNP", "Allele1", obj1.outfile.bgen.select.3 <- tempfile() "Allele2")) obj1.txt.select.3 <- read.table(obj1.outfile.txt.select.3, glmm.score(obj1, infile = bgenfile, BGEN.samplefile = samplefile, header = TRUE, as.is = TRUE) select = select, outfile = obj1.outfile.bgen.select.3) expect_equal(obj1.txt.select.1, obj1.txt.select.3) obj1.bgen.select.3 <- read.table(obj1.outfile.bgen.select.3, obj1.outfile.txt1.select.3 <- tempfile() header = TRUE, as.is = TRUE) expect_equal(obj1.bgen.select.1, obj1.bgen.select.3) glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.3, if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", quietly = TRUE)) { "Allele2")) obj1.txt1.select.3 <- read.table(obj1.outfile.txt1.select.3, obj1.outfile.gds.noselect.3 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj1, infile = gdsfile, outfile = obj1.outfile.gds.noselect.3) expect_equal(obj1.txt1.select.1, obj1.txt1.select.3) obj1.gds.noselect.3 <- read.table(obj1.outfile.gds.noselect.3, obj1.outfile.txt2.select.3 <- tempfile() header = TRUE, as.is = TRUE) expect_equal(obj1.gds.noselect.1, obj1.gds.noselect.3) glmm.score(obj1, infile = txtfile2, outfile = obj1.outfile.txt2.select.3, obj1.outfile.gds.select.3 <- tempfile() infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj1, infile = gdsfile, select = select, outfile = obj1.outfile.gds.select.3) "Allele2")) obj1.gds.select.3 <- read.table(obj1.outfile.gds.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.gds.select.1, obj1.gds.select.3) expect_equal(obj1.txt2.select.1, obj1.txt2.select.3) } obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, obj1.outfile.txt.select.3 <- tempfile() id = "id", family = binomial(link = "logit"), method = "REML", glmm.score(obj1, infile = txtfile, outfile = obj1.outfile.txt.select.3, method.optim = "AI") infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select <- match(1:400, unique(obj2$id_include)) select = select, infile.header.print = c("SNP", "Allele1", select[is.na(select)] <- 0 "Allele2")) obj1.txt.select.3 <- read.table(obj1.outfile.txt.select.3, header = TRUE, as.is = TRUE) obj2.outfile.bed.noselect.3 <- tempfile() expect_equal(obj1.txt.select.1, obj1.txt.select.3) glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.3) obj1.outfile.txt1.select.3 <- tempfile() obj2.bed.noselect.3 <- read.table(obj2.outfile.bed.noselect.3, glmm.score(obj1, infile = txtfile1, outfile = obj1.outfile.txt1.select.3, header = TRUE, as.is = TRUE) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.3) select = select, infile.header.print = c("SNP", "Allele1", obj2.outfile.bed.select.3 <- tempfile() "Allele2")) glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.3) obj1.txt1.select.3 <- read.table(obj1.outfile.txt1.select.3, obj2.bed.select.3 <- read.table(obj2.outfile.bed.select.3, header = TRUE, as.is = TRUE) expect_equal(obj1.txt1.select.1, obj1.txt1.select.3) header = TRUE, as.is = TRUE) obj1.outfile.txt2.select.3 <- tempfile() expect_equal(obj2.bed.select.1, obj2.bed.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, obj2.outfile.bgen.noselect.3 <- tempfile() select = select, infile.header.print = c("SNP", "Allele1", glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, "Allele2")) outfile = obj2.outfile.bgen.noselect.3) obj1.txt2.select.3 <- read.table(obj1.outfile.txt2.select.3, obj2.bgen.noselect.3 <- read.table(obj2.outfile.bgen.noselect.3, header = TRUE, as.is = TRUE) header = TRUE, as.is = TRUE) expect_equal(obj1.txt2.select.1, obj1.txt2.select.3) expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.3) obj2 <- glmmkin(disease ~ age + sex, data = pheno, kins = NULL, id = "id", family = binomial(link = "logit"), method = "REML", obj2.outfile.bgen.select.3 <- tempfile() method.optim = "AI") glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, select <- match(1:400, unique(obj2$id_include)) select = select, outfile = obj2.outfile.bgen.select.3) select[is.na(select)] <- 0 obj2.bgen.select.3 <- read.table(obj2.outfile.bgen.select.3, obj2.outfile.bed.noselect.3 <- tempfile() header = TRUE, as.is = TRUE) glmm.score(obj2, infile = plinkfiles, outfile = obj2.outfile.bed.noselect.3) expect_equal(obj2.bgen.select.1, obj2.bgen.select.3) obj2.bed.noselect.3 <- read.table(obj2.outfile.bed.noselect.3, if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", header = TRUE, as.is = TRUE) quietly = TRUE)) { expect_equal(obj2.bed.noselect.1, obj2.bed.noselect.3) obj2.outfile.gds.noselect.3 <- tempfile() obj2.outfile.bed.select.3 <- tempfile() glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.3) glmm.score(obj2, infile = plinkfiles, select = select, outfile = obj2.outfile.bed.select.3) obj2.gds.noselect.3 <- read.table(obj2.outfile.gds.noselect.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.gds.noselect.1, obj2.gds.noselect.3) expect_equal(obj2.bed.select.1, obj2.bed.select.3) obj2.outfile.gds.select.3 <- tempfile() obj2.outfile.bgen.noselect.3 <- tempfile() glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.3) glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, obj2.gds.select.3 <- read.table(obj2.outfile.gds.select.3, outfile = 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.gds.select.1, obj2.gds.select.3) expect_equal(obj2.bgen.noselect.1, obj2.bgen.noselect.3) } obj2.outfile.bgen.select.3 <- tempfile() obj2.outfile.txt.select.3 <- tempfile() glmm.score(obj2, infile = bgenfile, BGEN.samplefile = samplefile, glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.3, select = select, outfile = obj2.outfile.bgen.select.3) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj2.bgen.select.3 <- read.table(obj2.outfile.bgen.select.3, header = TRUE, as.is = TRUE) select = select, infile.header.print = c("SNP", "Allele1", expect_equal(obj2.bgen.select.1, obj2.bgen.select.3) "Allele2")) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", obj2.txt.select.3 <- read.table(obj2.outfile.txt.select.3, quietly = TRUE)) { header = TRUE, as.is = TRUE) obj2.outfile.gds.noselect.3 <- tempfile() expect_equal(obj2.txt.select.1, obj2.txt.select.3) glmm.score(obj2, infile = gdsfile, outfile = obj2.outfile.gds.noselect.3) obj2.outfile.txt1.select.3 <- tempfile() obj2.gds.noselect.3 <- read.table(obj2.outfile.gds.noselect.3, glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.3, header = TRUE, as.is = TRUE) infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, expect_equal(obj2.gds.noselect.1, obj2.gds.noselect.3) select = select, infile.header.print = c("SNP", "Allele1", obj2.outfile.gds.select.3 <- tempfile() "Allele2")) glmm.score(obj2, infile = gdsfile, select = select, outfile = obj2.outfile.gds.select.3) obj2.txt1.select.3 <- read.table(obj2.outfile.txt1.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.txt1.select.1, obj2.txt1.select.3) expect_equal(obj2.gds.select.1, obj2.gds.select.3) obj2.outfile.txt2.select.3 <- tempfile() } glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.3, obj2.outfile.txt.select.3 <- tempfile() infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, glmm.score(obj2, infile = txtfile, outfile = obj2.outfile.txt.select.3, select = select, infile.header.print = c("SNP", "Allele1", infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, "Allele2")) select = select, infile.header.print = c("SNP", "Allele1", obj2.txt2.select.3 <- read.table(obj2.outfile.txt2.select.3, "Allele2")) header = TRUE, as.is = TRUE) obj2.txt.select.3 <- read.table(obj2.outfile.txt.select.3, expect_equal(obj2.txt2.select.1, obj2.txt2.select.3) header = TRUE, as.is = TRUE) unlink(c(obj2.outfile.bed.noselect.1, obj2.outfile.bed.select.1, expect_equal(obj2.txt.select.1, obj2.txt.select.3) obj2.outfile.bgen.noselect.1, obj2.outfile.bgen.select.1, obj2.outfile.txt1.select.3 <- tempfile() glmm.score(obj2, infile = txtfile1, outfile = obj2.outfile.txt1.select.3, obj2.outfile.txt.select.1, obj2.outfile.txt1.select.1, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, select = select, infile.header.print = c("SNP", "Allele1", obj2.outfile.txt2.select.1)) "Allele2")) unlink(c(obj1.outfile.bed.noselect.2, obj1.outfile.bed.select.2, obj2.txt1.select.3 <- read.table(obj2.outfile.txt1.select.3, obj1.outfile.bgen.noselect.2, obj1.outfile.bgen.select.2, header = TRUE, as.is = TRUE) expect_equal(obj2.txt1.select.1, obj2.txt1.select.3) obj1.outfile.txt.select.2, obj1.outfile.txt1.select.2, obj2.outfile.txt2.select.3 <- tempfile() obj1.outfile.txt2.select.2)) glmm.score(obj2, infile = txtfile2, outfile = obj2.outfile.txt2.select.3, unlink(c(obj2.outfile.bed.noselect.2, obj2.outfile.bed.select.2, infile.nrow.skip = 5, infile.ncol.skip = 3, infile.ncol.print = 1:3, obj2.outfile.bgen.noselect.2, obj2.outfile.bgen.select.2, select = select, infile.header.print = c("SNP", "Allele1", obj2.outfile.txt.select.2, obj2.outfile.txt1.select.2, "Allele2")) obj2.outfile.txt2.select.2)) obj2.txt2.select.3 <- read.table(obj2.outfile.txt2.select.3, unlink(c(obj1.outfile.bed.noselect.3, obj1.outfile.bed.select.3, header = TRUE, as.is = TRUE) obj1.outfile.bgen.noselect.3, obj1.outfile.bgen.select.3, expect_equal(obj2.txt2.select.1, obj2.txt2.select.3) unlink(c(obj2.outfile.bed.noselect.1, obj2.outfile.bed.select.1, obj1.outfile.txt.select.3, obj1.outfile.txt1.select.3, obj2.outfile.bgen.noselect.1, obj2.outfile.bgen.select.1, obj1.outfile.txt2.select.3)) obj2.outfile.txt.select.1, obj2.outfile.txt1.select.1, unlink(c(obj2.outfile.bed.noselect.3, obj2.outfile.bed.select.3, obj2.outfile.txt2.select.1)) obj2.outfile.bgen.noselect.3, obj2.outfile.bgen.select.3, unlink(c(obj1.outfile.bed.noselect.2, obj1.outfile.bed.select.2, obj1.outfile.bgen.noselect.2, obj1.outfile.bgen.select.2, obj2.outfile.txt.select.3, obj2.outfile.txt1.select.3, obj1.outfile.txt.select.2, obj1.outfile.txt1.select.2, obj2.outfile.txt2.select.3)) obj1.outfile.txt2.select.2)) if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", unlink(c(obj2.outfile.bed.noselect.2, obj2.outfile.bed.select.2, quietly = TRUE)) obj2.outfile.bgen.noselect.2, obj2.outfile.bgen.select.2, unlink(c(obj2.outfile.gds.noselect.1, obj2.outfile.gds.select.1, obj2.outfile.txt.select.2, obj2.outfile.txt1.select.2, obj1.outfile.gds.noselect.2, obj1.outfile.gds.select.2, obj2.outfile.txt2.select.2)) obj2.outfile.gds.noselect.2, obj2.outfile.gds.select.2, unlink(c(obj1.outfile.bed.noselect.3, obj1.outfile.bed.select.3, obj1.outfile.gds.noselect.3, obj1.outfile.gds.select.3, obj1.outfile.bgen.noselect.3, obj1.outfile.bgen.select.3, obj2.outfile.gds.noselect.3, obj2.outfile.gds.select.3)) obj1.outfile.txt.select.3, obj1.outfile.txt1.select.3, }) obj1.outfile.txt2.select.3)) unlink(c(obj2.outfile.bed.noselect.3, obj2.outfile.bed.select.3, 33: obj2.outfile.bgen.noselect.3, obj2.outfile.bgen.select.3, eval(code, test_env) obj2.outfile.txt.select.3, obj2.outfile.txt1.select.3, obj2.outfile.txt2.select.3))34: if (requireNamespace("SeqArray", quietly = TRUE) && requireNamespace("SeqVarTools", eval(code, test_env) quietly = TRUE)) 35: unlink(c(obj2.outfile.gds.noselect.1, obj2.outfile.gds.select.1, withCallingHandlers({ obj1.outfile.gds.noselect.2, obj1.outfile.gds.select.2, eval(code, test_env) obj2.outfile.gds.noselect.2, obj2.outfile.gds.select.2, new_expectations <- the$test_expectations > starting_expectations obj1.outfile.gds.noselect.3, obj1.outfile.gds.select.3, if (snapshot_skipped) { obj2.outfile.gds.noselect.3, obj2.outfile.gds.select.3)) skip("On CRAN")}) } else if (!new_expectations && skip_on_empty) {33: eval(code, test_env) skip_empty() }34: }, expectation = handle_expectation, packageNotFoundError = function(e) {eval(code, test_env) if (on_cran()) { skip(paste0("{", e$package, "} is not installed."))35: }withCallingHandlers({}, snapshot_on_cran = function(cnd) { eval(code, test_env) snapshot_skipped <<- TRUE new_expectations <- the$test_expectations > starting_expectations invokeRestart("muffle_cran_snapshot") if (snapshot_skipped) {}, skip = handle_skip, warning = handle_warning, message = handle_message, skip("On CRAN") } error = handle_error, interrupt = handle_interrupt) else if (!new_expectations && skip_on_empty) { skip_empty()36: }doTryCatch(return(expr), name, parentenv, handler)}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) {37: skip(paste0("{", e$package, "} is not installed."))tryCatchOne(expr, names, parentenv, handlers[[1L]]) } 38: }, snapshot_on_cran = function(cnd) {tryCatchList(expr, classes, parentenv, handlers) snapshot_skipped <<- TRUE39: invokeRestart("muffle_cran_snapshot")tryCatch(withCallingHandlers({}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt) eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations36: if (snapshot_skipped) {doTryCatch(return(expr), name, parentenv, handler) skip("On CRAN") }37: else if (!new_expectations && skip_on_empty) {tryCatchOne(expr, names, parentenv, handlers[[1L]]) skip_empty() }38: }, expectation = handle_expectation, packageNotFoundError = function(e) {tryCatchList(expr, classes, parentenv, handlers) if (on_cran()) { skip(paste0("{", e$package, "} is not installed."))39: }tryCatch(withCallingHandlers({}, snapshot_on_cran = function(cnd) { eval(code, test_env) snapshot_skipped <<- TRUE new_expectations <- the$test_expectations > starting_expectations invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal) if (snapshot_skipped) { skip("On CRAN")40: }doWithOneRestart(return(expr), restart) else if (!new_expectations && skip_on_empty) { skip_empty()41: }withOneRestart(expr, restarts[[1L]])}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) {42: skip(paste0("{", e$package, "} is not installed."))withRestarts(tryCatch(withCallingHandlers({ } eval(code, test_env)}, snapshot_on_cran = function(cnd) { new_expectations <- the$test_expectations > starting_expectations snapshot_skipped <<- TRUE if (snapshot_skipped) { invokeRestart("muffle_cran_snapshot") skip("On CRAN")}, skip = handle_skip, warning = handle_warning, message = handle_message, } error = handle_error, interrupt = handle_interrupt), error = handle_fatal) else if (!new_expectations && skip_on_empty) { 40: doWithOneRestart(return(expr), restart) skip_empty()41: }withOneRestart(expr, restarts[[1L]])}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) {42: withRestarts(tryCatch(withCallingHandlers({ skip(paste0("{", e$package, "} is not installed.")) eval(code, test_env) } new_expectations <- the$test_expectations > starting_expectations}, snapshot_on_cran = function(cnd) { if (snapshot_skipped) { snapshot_skipped <<- TRUE skip("On CRAN") invokeRestart("muffle_cran_snapshot") }}, skip = handle_skip, warning = handle_warning, message = handle_message, else if (!new_expectations && skip_on_empty) { error = handle_error, interrupt = handle_interrupt), error = handle_fatal), skip_empty() end_test = function() { } })}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }43: }, snapshot_on_cran = function(cnd) {test_code(code = exprs, env = env, reporter = get_reporter() %||% snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot") StopReporter$new())}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal), 44: end_test = function() {source_file(path, env = env(env), desc = desc, shuffle = shuffle, }) error_call = error_call) 43: 45: test_code(code = exprs, env = env, reporter = get_reporter() %||% StopReporter$new()) FUN(X[[i]], ...)44: source_file(path, env = env(env), desc = desc, shuffle = shuffle, 46: error_call = error_call)lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call)45: FUN(X[[i]], ...)47: 46: doTryCatch(return(expr), name, parentenv, handler)lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call)48: tryCatchOne(expr, names, parentenv, handlers[[1L]])47: doTryCatch(return(expr), name, parentenv, handler)49: tryCatchList(expr, classes, parentenv, handlers)48: tryCatchOne(expr, names, parentenv, handlers[[1L]])50: tryCatch(code, testthat_abort_reporter = function(cnd) {49: cat(conditionMessage(cnd), "\n") NULLtryCatchList(expr, classes, parentenv, handlers)}) 51: 50: with_reporter(reporters$multi, lapply(test_paths, test_one_file, tryCatch(code, testthat_abort_reporter = function(cnd) { env = env, desc = desc, shuffle = shuffle, error_call = error_call)) cat(conditionMessage(cnd), "\n") NULL52: test_files_serial(test_dir = test_dir, test_package = test_package, }) test_paths = test_paths, load_helpers = load_helpers, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, 51: desc = desc, load_package = load_package, shuffle = shuffle, with_reporter(reporters$multi, lapply(test_paths, test_one_file, error_call = error_call) env = env, desc = desc, shuffle = shuffle, error_call = error_call)) 53: 52: test_files(test_dir = path, test_paths = test_paths, test_package = package, test_files_serial(test_dir = test_dir, test_package = test_package, reporter = reporter, load_helpers = load_helpers, env = env, test_paths = test_paths, load_helpers = load_helpers, reporter = reporter, 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, load_package = load_package, parallel = parallel, shuffle = shuffle) desc = desc, load_package = load_package, shuffle = shuffle, error_call = error_call)54: test_dir("testthat", package = package, reporter = reporter, 53: ..., load_package = "installed")test_files(test_dir = path, test_paths = test_paths, test_package = package, reporter = reporter, load_helpers = load_helpers, env = env, 55: stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, load_package = load_package, parallel = parallel, shuffle = shuffle)test_check("GMMAT") 54: An irrecoverable exception occurred. R is aborting now ... test_dir("testthat", package = package, reporter = reporter, ..., load_package = "installed") 55: test_check("GMMAT") 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