我正在使用Rails 3.2.11,Mac OS X Mountain Lion,Rspec
这是我的问题:
我有一个模型,在创建时,它会将信息发送到api。它可以正常工作,但是当我在rspec中测试它时,测试数据也会被发送到api数据库。这是代码:
模型
after_create :send_to_api
def send_to_api
api = APIModule.initialize_api(params)
api.send_data(self.attribute1,self.attribute2)
#connect to api, send to data to api
end
我在测试中试过这个:
Model.any_instance.stub(:send_to_api).and_return(true)
但它不起作用。每次我在测试中创建所述模型时,它都会将它们发送到数据库。任何帮助,将不胜感激。非常感谢提前!
答案 0 :(得分:-1)
不确定你是否想过这个但是如果你安装了mocha,你可以这样做:
Model.any_instance.stubs(:send_to_api).returns(true)
刚刚测试过,它可以正常工作