Я создаю гем, который предоставляет гораздо более удобную и настраиваемую «консоль» для разработки ruby gem, чем текущие опции (т. Е. «Комплектная консоль»).
Таким образом, один изНе самым важным аспектом всего гема является то, что он фактически открывает консольный сеанс, который я сейчас настроил в методе запуска:
class MyConsole
def start
Pry.start(self)
end
end
Я пытаюсь протестировать эту функциональность, но этотрудно, потому что их не много хороших ресурсов для этого.Это также очень раздражает, потому что каждый раз, когда я запускаю этот метод в rspec, открывается pry, и мне приходится выходить из него перед завершением остальных тестов.
У меня есть три основных вопроса:
- Как я могу запустить метод в rspec, который запускает pry без фактического запуска pry?
- Как конкретно проверить, что этот метод действительно запускает pry?
- Предполагается, что возможны 1 и 2Как я могу проверить, в каком контексте метод начинает pry в?(обратите внимание, как метод start вызывает Pry.start (self), это означает, что сеанс pry должен открываться в контексте экземпляра MyConsole.)