Как внедрить светильники в ожидания ожидания?

Недавно я начал использовать рамки ожидания теста Clojure. В рамках моего теста у меня есть набор данных, который я хочу сбросить до исходного значения до начала нового оператора test/ ожидаемого.

В clojure.test я просто создаю прибор и вызываю (use-fixtures:each my-fixture-fn).

Я искал хорошие примеры того, как сделать это в ожиданиях, но еще не повезло. Может ли кто-нибудь привести конкретный пример того, как реализовать прибор, который работает перед каждым тестом в ожиданиях?

1 ответ

Решение

Можно использовать оператор le t с ожидаемым. Может быть, что-то вроде этого сделает работу за вас (непроверенный псевдокод):

(expect 
 (let [dataset {val: "original values"}]
  (function-to-be-tested val:))
 expected-return-value)

Этот реальный код работает из коробки, чтобы показать принцип:

(expect (let [ar [1 2 3]]
   (first ar)) 2)

Он возвращает следующее сообщение об ошибке, как и ожидалось:

failure in (core_test.clj:9) : image-lib.core-test
(expect (let [ar [1 2 3]] (first ar)) 2)

       expected: 1
            was: 2

Ran 2 tests containing 2 assertions in 17 msecs
1 failures, 0 errors.
Tests completed at 10:59:45.435
Другие вопросы по тегам