lein test
генерирует исключение NullPointerException при тестировании функции, которая использует (resolve (symbol "a-fn"))
для возврата функции a-fn
. Тест работает нормально из REPL.
Мне не удалось найти способ решить a-fn
в наборе тестов для leiningen, если это действительно проблема.
Я создал проект Leiningen под названием my-resolve by lein new my-resolve
и добавил для них две функции и тесты:
источник/my_resolve/core.clj:
(ns my-resolve.core)
(defn a-fn [] "From a-fn")
(defn my-resolve [] (resolve (symbol "a-fn")))
тест/my_resolve/core_test.clj:
(ns my-resolve.core-test
(:require [clojure.test :refer :all]
[my-resolve.core :refer :all]))
;; Passes
(deftest a-fn-test
(testing "a-fn"
(is (= (a-fn)
"From a-fn"))))
;; my-resolve-test behaves correctly in the REPL (the test passes,
;; returns nil) but throws a NullPointerException when called from
;; lein test.
(deftest my-resolve-test
(testing "my-resolve"
(is (= ((my-resolve))
"From a-fn"))))
Спасибо.