【发布时间】:2012-12-20 09:56:59
【问题描述】:
我正在尝试在我的 grails 应用程序中测试搜索方法,但出现空指针异常。我在测试中模拟了域如下:
@TestFor(AuditController)
@Mock(Audit)
class AuditControllerTests {
void testSearch() {
populateValidParams(params)
def audit=new Audit(params)
audit.save(failOnError: true)
//Search existing customer
def model = controller.search()
assert model.auditInstanceList.size() == 1
assert model.auditInstanceList.size() == 1
}
}
我在 model.auditInstanceList 上获得了 NPE。它不应该为空。这是我的控制器中的代码:
def search = {
def query
def criteria = Audit.createCriteria()
def results
query = {
and{
if(params.customerName){
ilike("customerName", params.customer + '%')
}
if(params.siteName){
ilike("siteName", params.siteName + '%')
}
max:params.max
offset:params.offset
}
}
results = criteria.list(params, query)
render(view:'list', model:[ auditInstanceList: results,auditInstanceTotal:results.totalCount ])
}
这是怎么回事?
【问题讨论】:
-
请检查我更新的答案。
标签: unit-testing grails junit grails-2.0