Тест Spacemacs Cider не проходит

Когда я запускаю тест в Spacemacs с режимом Clojure через <SPC> m t t это не показывает сбой, даже когда тест явно не проходит. Увидеть:

тест не проходит

1 не равно 2, но все равно есть 0 неудачных тестов.

Как я могу сделать тест неудачным?

1 ответ

Решение

В вашем тесте есть проблема: в нем отсутствует оператор сравнения. Правильная версия:

(deftest test-exercise-1-4
  (testing "count-anywhere"
    (is (= 2 1))))

is макрос имеет следующее определение (отредактированный источник для краткости):

(defmacro is
  "Generic assertion macro.  'form' is any predicate test.
  'msg' is an optional message to attach to the assertion.

  Example: (is (= 4 (+ 2 2)) \"Two plus two should be 4\")

  ([form] `(is ~form nil))
  ([form msg] `(try-expr ~msg ~form)))

Как вы можете видеть с (is 2 1) вы называете второй арити где form является 2 и сообщение для утверждения 1, Как 2 Это правда, что делает утверждение, чтобы пройти:

(is 2)
;; => 2

(is false)

FAIL in () (boot.user5045373352931487641.clj:1)
expected: false
  actual: false
;; => false
Другие вопросы по тегам