Установка и разборка временного каталога для факта midje
Это скелет того, чего я хочу достичь
(let [temp-dir (create-temp-dir)] ; setup
(fact
(do-something-with temp-dir) => true) ; actual test
(delete-dir temp-dir)) ; teardown
Среда тестирования midje предоставляет доступ к лексической области (прокрутите вниз до конца). Так что это то, что я ожидал работать:
(against-background
(around :facts
(let [temp-dir (create-temp-dir)]
(do ?form (delete-dir temp-dir))))
(fact (do-something-with temp-dir) => true))
Но компилятор жалуется, что не может разрешить символ temp-dir
, Есть идеи, как заставить это работать?
1 ответ
Вам не хватает квадратных скобок вокруг вашей обертки. Из ссылки, которую вы включили:
Ноль или более оболочек можно найти в трех разных формах:
(на фоне [обертки] ...)
Обертки применяются ко всем формам на фоне.
(факт... (обертки на фоне) ...)
Семантически, это то же самое, что и фон, который оборачивает этот единственный факт. Форма на заднем плане может появляться где угодно в формах верхнего уровня факта, и их может быть несколько. Обратите внимание, что он не окружен [].
(фоновые обёртки...)