2015-01-07 2 views
3

Я создаю рецепт conda и добавил run_test.py. Это классы unittest. К сожалению, когда есть ошибки, пакет все еще создается.Как скомпрометировать сборку conda при возникновении ошибок в run_test.py

Мой вопрос, как сообщить conda, что тест не прошел, и он не должен продолжать сборку пакета.

run_test.py содержит:.

костюм = unittest.TestLoader() открыть (»../ тесты/UnitTest ") #, шаблон =" тест [AP] [ла] * [ср] .py ") unittest.TextTestRunner (многословие = 2) .run (костюм)

я добавить файлы в meta.yaml

тест: файлы: - ../tests/unittest/

Это выход:

Ran 16 тестов в 2.550s

FAILED (ошибки = 5)

===== ПАКЕТ-ИМЯ-None-np18py27_0 OK ====

Я хочу, чтобы остановить сборку

ответ

3

Скрипт должен выйти из ненулевого. Если тесты не работают, вызовите sys.exit(1) в скрипте.

0

В run_test.py, вы можете вызвать unittest.main(), выполнив следующие действия: процесс сборки

if __name__ == "__main__": 
    unittest.main() 

Конда автоматически прекращает работу, если тесты не удастся. Эта ссылка поможет вам найти: invoking unittest main method

Смежные вопросы