(module pathlike mzscheme (require "../pathlike.ss" (planet "test.ss" ("schematics" "schemeunit.plt" 1))) (provide pathlike-test) (define pathlike-test (make-test-suite "pathlike.ss" (make-test-case "pathlike?" (assert-true (pathlike? "a")) (assert-true (pathlike? (string->path "a"))) (assert-false (pathlike? #"a")) (assert-false (pathlike? 5)) (assert-false (pathlike? 'hello))) (make-test-case "pathlike->string" (assert-equal? (pathlike->string (string->path "a")) "a") (assert-equal? (pathlike->string "a") "a") (assert-exn exn:fail:contract? (lambda () (pathlike->string #"a")))) (make-test-case "pathlike->path" (assert-equal? (pathlike->path (string->path "a")) (string->path "a")) (assert-equal? (pathlike->path "a") (string->path "a")) (assert-exn exn:fail:contract? (lambda () (pathlike->path #"a")))) (make-test-case "pathlike->bytes" (assert-equal? (pathlike->bytes (string->path "a")) #"a") (assert-equal? (pathlike->bytes "a") #"a") (assert-exn exn:fail:contract? (lambda () (pathlike->bytes #"a")))))) )