Video: https://www.youtube.com/watch?v=ZFSS8_pFemc
https://www.rubyconfmini.com/program#Weaving-and-seaming-mocks
To mock or not mock is an important question, but let's leave it apart and admit that we, Rubyists, use mocks in our tests.
Mocking is a powerful technique, but even when used responsibly, it could lead to false positives in our tests (thus, bugs leaking to production): fake objects could diverge from their real counterparts.
In this talk, I'd like to discuss various approaches to keeping mocks in line with the actual implementation and present a brand new idea based on mock fixtures and contracts.