我正在使用 Spock 插件编写 Grails 2.2.1 集成测试,其中我试图将两组数据发布到同一个控制器端点:
when: "The user adds this product to the inventory"
def postData = [productId: 123]
controller.request.JSON = postData
controller.addToInventory()
and: "Then they add another"
def secondPostData = [productId: 456]
controller.request.JSON = secondPostData
controller.addToInventory()
then: "The size of the inventory should be 2"
new JSONObject( controller.response.contentAsString ).inventorySize == 2
我看到的问题是两个请求都将相同的 JSON 提交给 addToInventory() 。
这个 StackOverflow 问题建议调用 controller.request.reset(),但这不起作用(没有方法签名:org.codehaus.groovy.grails.plugins.testing.GrailsMockHttpServletRequest.reset())。
我正在尝试的可能吗?