0
我有一個ExampleModel調用了一個從我們的後端檢索數據的ExampleService。我無法弄清楚如何爲我的應用程序編寫單元測試;使用Oil擴展單元測試和模擬robotlegs服務調用
ExampleService
public function retrieveMyToDoList(parameters):Promise
{
var promise:Promise = performRequest({request: "call to backend", parameters: values, session_id: clientModel.sessionID});
promise.addResultProcessor(parseRetrieveToDoListResult);
return promise;
}
protected function parseRetrieveToDoListResult(data:Object, callback:Function):void
{
does some JSON parsing into an object
callback(null, object containing my retrieved data)
}
ExampleModel
public function getMyToDoList():Promise
{
var promise:Promise = exampleService.retrieveToDoList(parameters);
promise.addResultHandler(onGetToDoListResult);
promise.addErrorHandler(onGetToDoListError);
return promise;
}
private function onGetHeadrsByUserResult(promise:Promise):void
{
// where this event will be listened to by mediators etc
dispatchEvent(new ResponseEvent(GOOD_RESULT));
}
private function onGetHeadrsByUserError(promise:Promise):void
{
dispatchEvent(new ResponseEvent(BAD_RESULT));
}
我試圖用asmock嘲笑我的服務,這樣我可以測試我的模型以及它如何處理:如下圖所示,其被構造結果對象中的各種結果,但我該如何嘲笑回調?我看到了返回值被嘲笑的例子,但在我使用Promise和回調的情況下,我不太確定如何繼續。
如果有人可以請指教。 謝謝!
handleResult確實做到了!感謝Creynders的評論。那麼我會審查一下。 –