Я использую тесты носа для модульного тестирования, так же как и команда, разрабатывающая IPython.Существуют тесты для встроенных магических функций https://github.com/ipython/ipython/blob/master/IPython/core/tests/test_magic.py
Проблема в том, что при написании тестов, как обычно, когда я пытаюсь запустить IPython с чем-то вроде
from IPython import get_ipython
ip = get_ipython()
ip.register_magics(MyMagic)
, тесты на носу завершаются с ошибкой, которая'NoneType' object has no attribute 'register_magics'
.Это потому, что get_ipython()
возвращает None
.
В тестах IPython некоторые пользовательские плагины решают проблему.Команда iptest
запускает тесты IPython, включая магию.Проблема в том, что я не понимаю, как именно я должен запустить тест, или где находится плагин и как изменить его для пользовательского магического тестирования.Любая помощь будет оценена
PS: я также пытался использовать InteractiveShellEmbed()
, но она не работает, как ожидалось.