2

I'm using RR as the mocking framework for a personal project of mine. I've been using it to mock the new method for some classes and when I run the tests they pass fine, but when I run ALL of the tests I run into a problem where it seems like the "new" methods are still returning the fake results, even when in a different test file. Is there a way to turn off the stubbing of the new method manually? What am I missing here?

Thanks for the help, Alex

I've tried putting this code into my app and it breaks the app, and.... doesn't fix the above problem.

RSpec.configure do |config|
  config.mock_with :rr
end
Alex Baranosky
  • 48,865
  • 44
  • 102
  • 150

2 Answers2

1

Mocks are replacing your old methods. Once a method is replaced by your mock it will never be normal again unless you using precautions.

Take a look at this thread. I explained there how one can undo Mocha mocks using simple alias.

Community
  • 1
  • 1
Yossi
  • 11,778
  • 2
  • 53
  • 66
1

RSpec's mocks are torn down automatically between tests. However, when you configure RSpec to mock with another library, you still have to use it through the RSpec mocking API.

Mark Thomas
  • 37,131
  • 11
  • 74
  • 101