~ chicken-core (chicken-5) /tests/file-access-tests.scm
Trap1;;2;; Tests for file and directory access.3;;4;; These may seem silly, but some of them actually fail on MinGW without help.5;;67(import (chicken file)8 (chicken process-context))910(define / (car (command-line-arguments)))11(define // (string-append / /))12(define /// (string-append / / /))1314(assert (not (file-exists? "")))15(assert (not (directory-exists? "")))1617(assert (file-exists? /))18(assert (file-exists? //))19(assert (file-exists? ///))2021(assert (directory-exists? /))22(assert (directory-exists? //))23(assert (directory-exists? ///))2425(assert (file-exists? "."))26(assert (file-exists? ".."))2728(assert (directory-exists? "."))29(assert (directory-exists? ".."))3031(assert (file-exists? (string-append "." /)))32(assert (file-exists? (string-append "." //)))33(assert (file-exists? (string-append "." ///)))3435(assert (file-exists? (string-append ".." /)))36(assert (file-exists? (string-append ".." //)))37(assert (file-exists? (string-append ".." ///)))3839(assert (file-exists? (string-append ".." / "tests")))40(assert (file-exists? (string-append ".." / "tests" /)))41(assert (file-exists? (string-append ".." / "tests" //)))42(assert (file-exists? (string-append ".." / "tests" ///)))4344(assert (directory-exists? (string-append "." /)))45(assert (directory-exists? (string-append "." //)))46(assert (directory-exists? (string-append "." ///)))4748(assert (directory-exists? (string-append ".." /)))49(assert (directory-exists? (string-append ".." //)))50(assert (directory-exists? (string-append ".." ///)))5152(assert (directory-exists? (string-append ".." / "tests")))53(assert (directory-exists? (string-append ".." / "tests" /)))54(assert (directory-exists? (string-append ".." / "tests" //)))55(assert (directory-exists? (string-append ".." / "tests" ///)))5657(assert (file-exists? (program-name)))58(assert (not (directory-exists? (program-name))))5960(assert (not (file-exists? (string-append (program-name) /))))61(assert (not (file-exists? (string-append (program-name) //))))62(assert (not (file-exists? (string-append (program-name) ///))))6364(assert (not (directory-exists? (string-append (program-name) /))))65(assert (not (directory-exists? (string-append (program-name) //))))66(assert (not (directory-exists? (string-append (program-name) ///))))6768(print "All tests passed for slash: " /)