What way it's better to test this method? Using a real instance of game,
or using a mock?

It basically depends on how complex Game is. In this simplistic example, there's really no harm in testing both objects together at the same time, but nine times out of ten in the real world, you want to isolate your tests so that when a bug is introduced in Game it's only the specs for Game that fail, and not the specs for anything else.

Mocks help with this by putting 'firewalls' between the classes you're testing, so you can be sure that you're only testing a single class at once. Once you get the hang of them, they can also help you to think a little more about the interactions between your classes, and produce cleaner designs. The trade-off is that you need to keep the mocked behaviour consistent with the actual behaviour of the class being mocked.

It sounds as though you could benefit from reading about mocks. Check out the links at the bottom of this page:
http://rspec.info/documentation/mocks/

cheers,
Matt
----
http://blog.mattwynne.net
http://songkick.com

In case you wondered: The opinions expressed in this email are my own and do not necessarily reflect the views of any former, current or future employers of mine.



_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to