【发布时间】:2013-02-15 14:40:34
【问题描述】:
我有这样的代码:
@TestFor(MyService)
class MyServiceTests {
void testIt() {
def logTo = []
def loggerMock = mockFor(service.log.class)
loggerMock.demand.error(1..1) { String msg, Exception ex ->
logTo << [level: 'error', msg: msg, ex: ex]
}
service.log = loggerMock.createMock()
}
}
它失败了:
| Failure: testIt(MyServiceTests)
| java.lang.ArrayIndexOutOfBoundsException: 0
at SLF4JLog_groovyProxy.<init>(Script1.groovy:4)
at Script1.run(Script1.groovy:8)
at grails.test.GrailsMock.createMock(GrailsMock.groovy:91)
at package.MyServiceTests.testIt>>>(MyServiceTests.groovy:25)
指向service.log = loggerMock.createMock() 行。它有什么问题?
【问题讨论】: