2017-06-13 82 views
0

我有一個單元測試,我想模擬兩種服務方法。我知道該怎麼做一次:如何在grails中使用spock模擬同一類的多個方法?

def caseHistoryMock = mockFor(CaseHistoryService) 
     caseHistoryMock.demand.getLatestCaseHistory(1..1) {String caseNumber, String productFamily -> return caseHistoryObj } 
     controller.caseHistoryService = caseHistoryMock.createMock() 

如何嘲笑caseHistoryService的另一種方法。是在我的控制方法的調用如下:

def caseHistoryObj = caseHistoryService.getLatestCaseHistory(alert.caseNumber, alert.productFamily) 

caseHistoryService.saveCaseHistory(caseHistoryMap) 

*我使用Grails 2.5.1。 由於提前, Apoorv

回答

0

您可以Mock功能嘲笑它:

def caseHistoryMock = Mock(CaseHistoryService) 
1 * caseHistoryMock.getLatestCaseHistory(_, _) >> caseHistoryObj 
1 * caseHistoryMock.saveCaseHistory(_) 
controller.caseHistoryService = caseHistoryMock 

1 *是可選的,describs功能應該多久被調用。

相關問題