(load "Test.carp") (use-all IO Test) (defn write-then-read [content file-name] (let [ written? (IO.write-file content file-name) ] (if (Result.error? &written?) (Result.unsafe-from-error written?) (let-do [ read? (IO.read-file file-name) ] (IO.Raw.unlink! file-name) (if (Result.error? &read?) (Result.unsafe-from-error read?) (Result.unsafe-from-success read?) ))))) (deftest test (assert-nothing test &(IO.getenv "thisdoesnotexist") "getenv works on non-existant variable" ) (assert-just test &(IO.getenv "PATH") "getenv works on existant variable" ) (let [ data "Icke\n\tdette\n\tkieke mal,\nOochen, Flesch und Beene." ] ; include \n in test data! (assert-equal test data &(write-then-read data "io_carp_testdata.txt") "write-file then read-file" )) )