Rspec binding.pry из метода

Я пытаюсь использовать метод binding.pry и отлаживать его.

Упрощенный пример того, что я пытаюсь сделать.

hello.rb

class Hello
 def self.hello
  'Hello world!'
  binding.pry
 end
end

spec / hello_spec.rb

describe Hello do
 it 'Hello#hello should print message' do
  expect {Hello.hello}.to eq('Hello world!')
 end
end

Я хотел бы отладить метод self.hello, как я могу зарегистрировать этот метод с помощью binding.pry? Когда я пытаюсь запустить rspec hello_spec.rb, я не получаю консоль pry для отладки этого метода.

1 ответ

Попробуйте изменить строку:

expect {Hello.hello}.to eq('Hello world!')

кому:

expect Hello.hello.to eq('Hello world!')

и он должен работать. Другими словами, снимите скобки. У меня это сработало.

Мне пришлось сделать некоторые предположения о вашей настройке. Я бы рекомендовал включить ваш Gemfile в следующий раз, когда у вас возникнет вопрос.

Другие вопросы по тегам