2011-10-17 3 views
3

안녕하세요. 각 실행중인 테스트 방법을 인쇄하고 싶습니다.Leiningen의 테스트 이름 인쇄

(defn myfixture [b] 
    (do 
    (println "start") 
    (b) 
    (println "end") 
) 
) 

(deftest test1 [] ..... 

은 내가 테스트를 실행할 때 REPL에서 "TEST1"인쇄를보고 싶어 : 나는 비교적 간단있는 lein 테스트 파일이 있습니다. 메서드 이름을 인쇄하는 간단한 방법이 있나요? (myfixture에서 b 메서드를 호출하거나 "lein 테스트"를 호출 할 때)?

답변

2

당신은이 같은 함수의 이름을 얻을 수 있습니다 : 당신이 찾고있는 설비가 일반 clojure.test에 존재하지만 꽤 광범위한 고정 시설 midje 경우

(defn function-name [f] 
    (:name (meta f))) 

(defn my-func [] 
    (println "Hello, world!")) 

(let [f my-func] 
    (function-name f)) 
;=> my-func 

내가 모르는를 this link은 아마도 체크 아웃 할 가치가 있습니다.

+0

Humm ... 이것은 작동하지 않았습니다. "lein test"에서 인쇄되어 core_test.clj에 추가되면 (주석에 대한 서식 옵션이 많지 않습니다.)이 기능은 null을 인쇄합니다. (사용 기능 : 각 # (println "기능 메타"는 (메타 %)) –

관련 문제