2013-03-12 4 views
3

Я использую jEdit, и я хочу написать файл и запустить тесты. Меня интересует процесс запуска тестов, а не самих файлов.Как запустить тестовые файлы в Clojure

Так что я написал эту простую функцию в File.clj

(defn abs [n] 
    (if (neg? n) (- n) n)) 

И это испытание в TheTest.clj

(use 'clojure.test) 

(load-file "File.clj") 

(deftest sample-test 
    (testing "abs" 
    (is (= 5 (abs (5)))))) 

(run-tests) 

, а затем я запускаю файл TheTest.clj, но он говорит:

java.io.FileNotFoundException: File.clj (The system cannot find the file specified) (TheTest.clj:49)

Может сом eone, пожалуйста, скажите, что это способ сделать что-то, а если не как запустить тесты :(Нет необходимости быть в jEdit, это может быть в командной строке, если это необходимо. Также у меня установлен leiningen и File.clj и TheTest.clj находятся в том же каталоге. Я также попытался предоставить весь путь к файлу в функции load-file, но без успеха.

Спасибо, хорошие люди! :)

+0

ли это leiningen project? –

+0

Нет, это не так. Есть ли способ запустить тест без создания проекта? – Faery

+0

Leiningen работает с файлами внутри своего проекта. Просто создайте проект Leiningen, и вы получите полный набор инструментов, а не только возможность запуска тестов. И если вы просто хотите запустить какой-то код для проверки своей идеи или что-то вроде этого, запустите обычную функцию. – ffriend

ответ

6

Это, безусловно, возможно, чтобы ваш пример работал без Leingingen. Он работает на моем компьютере с одним небольшим изменением: снять скобки вокруг 5, так что тест линия читает

(is (= 5 (abs 5))) 

Чтобы запустить скрипт успешно, найти местоположение вашего Clojure JAR, откройте терминал и перейти в каталог где ваши исходные файлы жить, а затем выполнить следующие действия:

java -cp /path/to/clojure/clojure-1.4.0.jar clojure.main TheTest.clj 

Очевидно заменить /path/to/clojure/clojure-1.4.0.jar фактический путь к Clojure в вашей системе. Если вы использовали Leiningen вообще там будет копией в репозитории Maven (я получил его в ~/.m2/repository/org/clojure/clojure/1.4.0/clojure-1.4.0.jar)

Я запускать TheTest.clj и выход:

Testing user 

Ran 1 tests containing 1 assertions. 
0 failures, 0 errors. 
+0

Большое спасибо! :) – Faery

Смежные вопросы