在我开始之前,我使用rspec,shoulda-matchers和factorygirl来缓解测试,所以如果这些库包含有助于解决以下问题的东西,请告诉我。如何在不重新测试胖模型的情况下测试瘦身控制器?
我在设计我的控制器和模型,并不确定如何去测试这种情况。
我有一个游戏模型,它可以包含一堆玩家。如果游戏尚未开始,玩家只能被移除,所以我在游戏模型中添加了remove_player方法并进行了彻底测试。
在我的播放器控制器中,我有删除操作调用remove_player方法来实际执行该操作,然后该操作导致重定向。
如何在不重新测试该方法的情况下进行测试,确定控制器实际上正在做它应该做的事情(调用remove_player)?我可以测试做重定向,但如果将来,remove_player的调用被删除,那么这不会失败。
我知道shoulda-matchers具有“should_validate_presence_of”之类的东西,这与此测试背后的想法是一样的,但不适用于我自己的方法。