2
我是新来的测试策略和嘲笑,而且我很难搞清楚如何模拟对外部服务的调用。我敢肯定,这是件容易的事,我只是不知道究竟是什么。嘲笑外部的API
我使用Braintree gem通过Braintree网关向订阅服务收费,我想模拟UserController的create方法中的Customer create方法和Subscription创建方法。
一个Customer.create方法看起来是这样的:
result = Braintree::Customer.create(
:first_name => @creditcard.first_name,
:last_name => @creditcard.last_name,
:email => @user.email
:credit_card => {
...
}
}
)
这会返回一个布伦特里::成功的结果对象,与处理结果的属性。
我想我必须做一些事情,如:
Braintree::Customer.expects(:create).returns(...)
但在发生什么回报面积?我需要创建自己的模拟了成功的对象与假处理结果的属性,还是有更简单的方法来做到这一切?
感谢您提供的任何帮助。
你需要返回一些对象,要么是或“呱呱”布兰特里::客户 我有时只是使用OpenStruct – rogerdpack 2010-08-04 11:03:00
啊,我认为这正是我期待的那种事情。只是模仿相同的基本结构。谢谢! – joeellis 2010-08-04 16:06:46