;;;; directory-utils-test.scm (use test) (use directory-utils) (test-begin "directory-utils") (test-assert (pathname? "abc/cbs.foo")) (test-assert (pathname? "abc/cbs")) (test-assert (pathname? ".abc")) (test-assert (not (pathname? ""))) (test-assert (not (filename? "abc/cbs.foo"))) (test-assert (filename? "cbs.foo")) (test-assert (not (dot-pathname? "abc/cbs.foo"))) (test-assert (dot-pathname? "/abc/.hide/hidden")) (test-assert (not (dot-pathname? "/abc/cbs/./foo"))) (test-assert (not (dot-pathname? "/abc/cbs/../foo"))) (test-assert (dot-pathname? "/abc/cbs/../.foo")) (test-assert (dot-pathname? "/abc/cbs/../.foo/bar")) (test-assert (dot-filename? ".hide")) (test-assert (not (dot-filename? "/abc/.hide/hidden"))) (test-assert (not (dot-filename? "."))) (test-assert (not (dot-filename? ".."))) (test '("abc/cbs.foo") (remove-dotfiles '(".hide" "abc/cbs.foo"))) (test-assert (which-command-pathnames "mkdir")) (test-assert (not (which-command-pathnames "93274030#$%)#)$()"))) (cond-expand (compiling (define-constant TESTS-DIRECTORY-COUNT 3)) (else (define-constant TESTS-DIRECTORY-COUNT 2)) ) (test "directory-fold tests" TESTS-DIRECTORY-COUNT (directory-fold (lambda (fn ct) (fx+ ct 1)) 0 "." #:dotfiles? #f)) (test-assert (push-directory "..")) (define-constant EGG-DIRECTORY-COUNT 4) (let ((dotno (directory-fold (lambda (fn ct) (fx+ ct 1)) 0 "." #:dotfiles? #f))) (test-assert "directory-fold tests/.." (<= EGG-DIRECTORY-COUNT dotno)) ) (test-assert (pop-toplevel-directory)) ;(pop-directory) (test-end "directory-utils") (test-exit)