我有一个 ExampleModel 调用从我们的后端检索数据的 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)
}
示例模型
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 和回调,我不太确定如何继续。
如果有人可以请建议。谢谢!