fa24711e |
1 | (ns leiningen.new.flibbertigibbet-test |
2 | (:require [clojure.test :refer :all] |
3 | [leiningen.new.flibbertigibbet :refer :all])) |
4 | |
5 | (defn safe-delete [file-path] |
6 | (if (.exists (clojure.java.io/file file-path)) |
7 | (try |
8 | (clojure.java.io/delete-file file-path) |
9 | (catch Exception e (str "exception: " (.getMessage e)))) |
10 | false)) |
11 | |
12 | (defn delete-directory [directory] |
13 | (let [contents (file-seq (clojure.java.io/file directory)) |
14 | delete-files (filter #(.isFile %) contents)] |
15 | (doseq [file delete-files] |
16 | (safe-delete (.getPath file))) |
17 | (safe-delete directory))) |
18 | |
19 | (deftest a-test |
20 | (testing "flibbertigibbet should advertise itself, so i know it works" |
21 | (is (= "Generating fresh 'lein new' flibbertigibbet project: projecta\n" |
22 | (with-out-str (flibbertigibbet "projecta")))) |
23 | (delete-directory "./projecta"))) |