(use test setup-api) (cond-expand (linux) (else (exit 0))) (test-group "fuse (smoke test)" (load "smoke.scm") (unless (test-smoke "path") (fprintf (current-error-port) " simple mount failed\n") (fprintf (current-error-port) " skipping other tests\n") (exit 1))) (define-syntax test-interpreted (syntax-rules () ((_ file) (fluid-let ((test-exit void)) (load file))))) (define-syntax test-compiled (syntax-rules () ((_ file) (let ((exit-status (handle-exceptions _ 1 (compile file -o "compiled") (arithmetic-shift (system "./compiled") -8)))) (if (zero? exit-status) (test-exit) (exit exit-status)))))) (test-interpreted "all.scm") (test-compiled "all.scm")