Unit testing junit.framework.AssertionFailedError:不再调用'获取系统状态'在这一点上是意料之中的。需求结束
PFB我的控制器、控制器测试和维修代码。我收到以下失败错误:junit.framework.AssertionFailedError:不再调用'获取系统状态'在这一点上是意料之中的。需求结束 控制器: 控制器测试: 服务:Unit testing junit.framework.AssertionFailedError:不再调用'获取系统状态'在这一点上是意料之中的。需求结束,unit-testing,grails,mocking,Unit Testing,Grails,Mocking,PFB我的控制器、控制器测试和维修代码。我收到以下失败错误:junit.framework.AssertionFailedError:不再调用'获取系统状态'在这一点上是意料之中的。需求结束 控制器: 控制器测试: 服务: 请确保调用getSystemStatus的次数不超过100次。我肯定不会超过100次 def status() { int statusCode = muleService.getSystemStatus(muleService.getMuleTo
请确保调用getSystemStatus的次数不超过100次。我肯定不会超过100次
def status() {
int statusCode = muleService.getSystemStatus(muleService.getMuleToken())
if (statusCode == 200) {
redirect(action: 'create')
}
}
void setUp(){
def mockControl = mockFor(MuleService)
//params are the parameters passed to the service method
mockControl.demand.getSystemStatus(0..100) { params ->
statusCode = "200"
return "200"
}
mockControl.demand.getMuleToken(0..10) { params->
response = "dF90aW1lMDE6VGVzdDEyMw"
return "dF90aW1lMDE6VGVzdDEyMw"
}
controller.muleService = mockControl.createMock()
}
void testStatus_statusCode200() {
when:
controller.status()
then:
response.redirectedUrl == '/trip-entry/create'
}
String getMuleToken() {
return WebUtils.retrieveGrailsWebRequest().getSession().getAttribute("muleToken")?.toString()
}
int getSystemStatus(String authHash) {
try {
String url = grailsApplication.config.trip.mule.url.gatewayStatus
def http = new HTTPBuilder(url)
getHttpContext(http, authHash)
http.request(Method.GET) {
response.success = { resp ->
return resp.statusLine.statusCode
println resp.statusLine.statusCode
}
response.failure = { resp ->
return resp.statusLine.statusCode
println resp.statusLine.statusCode
}
// println resp.statusLine.statusCode
}
} catch (Exception e) {
return 500
}
}