2017-06-13 6 views
0

私はサービスの2つの方法を模擬したい単体テストを持っています。私はそれを一度行う方法を知っています:spockを使って同じクラスの複数のメソッドをgrailsでモックする方法は?

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。

関連する問題