У меня есть следующий метод для создания нового объекта подключения. Откроется последовательный порт. Обратите внимание, что произойдет сбой, если порт не существует.
class Connection
def initialize(port)
begin
@serial = SerialPort.new(port, 9600, 8, 1, SerialPort::NONE)
rescue
exit(1)
end
end
def send_command
@serial.write "Something"
end
end
Я написал спецификацию RSpec для этого метода, пока все хорошо. Теперь я хотел бы указать следующий метод, "send_command".
Проблема в том, что я не могу вызвать Connection.new("/some/port")
в этой спецификации, так как он не будет работать (порт не существует). Как я могу обойти метод создания, не заглушая новый метод? Если я правильно понимаю, мне не разрешено заглушать или издеваться над классом, который я тестирую, верно?
Спасибо!