diff options
| author | Pjotr Prins | 2025-11-27 17:34:50 +0100 |
|---|---|---|
| committer | Pjotr Prins | 2025-11-27 17:34:50 +0100 |
| commit | e7c511df3d7702a06b78c22207da094403ead3aa (patch) | |
| tree | 68a4dc01172931854b9a4de8f5fc3ea9eea242b6 /test | |
| parent | dd01ba961c0f04637a1418d0536cc62e7907446d (diff) | |
| download | pangemma-e7c511df3d7702a06b78c22207da094403ead3aa.tar.gz | |
Prepare for split testing
Diffstat (limited to 'test')
| -rwxr-xr-x | test/runner | 42 | ||||
| -rwxr-xr-x | test/test-uvlmm-integration.scm | 37 |
2 files changed, 42 insertions, 37 deletions
diff --git a/test/runner b/test/runner index 8d8b877..5002d80 100755 --- a/test/runner +++ b/test/runner @@ -5,46 +5,14 @@ exec guile --debug -s "$0" "$@" (define-module (test-runner) #:use-module (ice-9 match) - #:use-module (srfi srfi-1) ; for last + #:use-module (srfi srfi-1) ; for last #:use-module (srfi srfi-13) - #:use-module (srfi srfi-64) + #:use-module (srfi srfi-64) ; for tests #:use-module (ice-9 rdelim) ) -(test-begin "runner") +(test-begin "all-tests") -(test-begin "vec-test") -(define v (make-vector 5 99)) -;; Require that an expression evaluate to true. -(test-assert (vector? v)) -;; Test that an expression is eqv? to some other expression. -(test-eqv 99 (vector-ref v 2)) -(vector-set! v 2 7) -(test-eqv 7 (vector-ref v 2)) -;; Finish the testsuite, and report results. -(test-end "vec-test") +(load "test-uvlmm-integration.scm") -(test-begin "external-gemma-run") -(let [(err (system "./build/bin/Debug/gemma -g ./example/mouse_hs1940.geno.txt.gz -p ./example/mouse_hs1940.pheno.txt -gk -o mouse_hs1940 -debug"))] - (test-eqv 0 err)) -(let [(err (system "./build/bin/Debug/gemma -g ./example/mouse_hs1940.geno.txt.gz -p ./example/mouse_hs1940.pheno.txt -n 1 -a ./example/mouse_hs1940.anno.txt -k ./output/mouse_hs1940.cXX.txt -o mouse_hs1940 -lmm 9 -debug"))] - (test-eqv 0 err)) -(call-with-input-file "output/mouse_hs1940.assoc.txt" - (lambda (port) - (read-line port) ; skip first line - (let* ((fields (string-split (read-line port) #\tab)) - (last-field (last fields))) - (test-eqv 208.0 (truncate (* 1000 (string->number last-field))))) - (test-eqv 5720672.0 - (let loop ((line (read-line port)) - (sum 208.0)) - (if (eof-object? line) - sum - (let* ((fields (string-split line #\tab)) - (last-field (last fields)) - (value (string->number last-field))) - (loop (read-line port) - (+ sum (truncate (* 1000 value)))))))))) -(test-end "external-gemma-run") - -(test-end "runner") +(test-end "all-tests") diff --git a/test/test-uvlmm-integration.scm b/test/test-uvlmm-integration.scm new file mode 100755 index 0000000..97539b8 --- /dev/null +++ b/test/test-uvlmm-integration.scm @@ -0,0 +1,37 @@ +#!/bin/sh +# -*- mode: scheme; -*- +exec guile --debug -s "$0" "$@" +!# + +(define-module (test-runner) + #:use-module (ice-9 match) + #:use-module (srfi srfi-1) ; for last + #:use-module (srfi srfi-13) + #:use-module (srfi srfi-64) ; for tests + #:use-module (ice-9 rdelim) + ) + +(test-begin "external-gemma-run") + +(let [(err (system "./build/bin/Debug/gemma -g ./example/mouse_hs1940.geno.txt.gz -p ./example/mouse_hs1940.pheno.txt -gk -o mouse_hs1940 -debug"))] + (test-eqv 0 err)) +(let [(err (system "./build/bin/Debug/gemma -g ./example/mouse_hs1940.geno.txt.gz -p ./example/mouse_hs1940.pheno.txt -n 1 -a ./example/mouse_hs1940.anno.txt -k ./output/mouse_hs1940.cXX.txt -o mouse_hs1940 -lmm 9 -debug"))] + (test-eqv 0 err)) +(call-with-input-file "output/mouse_hs1940.assoc.txt" + (lambda (port) + (read-line port) ; skip first line + (let* ((fields (string-split (read-line port) #\tab)) + (last-field (last fields))) + (test-eqv 208.0 (truncate (* 1000 (string->number last-field))))) + (test-eqv 5720672.0 + (let loop ((line (read-line port)) + (sum 208.0)) + (if (eof-object? line) + sum + (let* ((fields (string-split line #\tab)) + (last-field (last fields)) + (value (string->number last-field))) + (loop (read-line port) + (+ sum (truncate (* 1000 value)))))))))) + +(test-end "external-gemma-run") |
