我正在编写一些单元测试,并希望测试我的组件如何对某些特定的Flash事件做出反应。所以我需要一种方法来发送这些事件。我认为那是可能的。
我正在尝试使用asmock,但试图将http://asmock.sourceforge.net/wiki/Quick_Start_Guide中的信息拼凑起来让我失望。
如果有人能指出我一个完整的例子,那就太好了! 也可以使用其他测试框架。
谢谢!
答案 0 :(得分:0)
public class EventSimulator extends EventDispatcher
{
public function doMouseClick():void {
dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
public function doChange():void {
dispatchEvent(new Event(Event.CHANGE));
}
//and so on..
}
答案 1 :(得分:0)
如果你已经使用asMock,那么你可以这样做:
var dispatcher2 : IEventDispatcher =
IEventDispatcher(mockRepository.createStub(IEventDispatcher, StubOptions.NONE));
mockRepository.stubEvents(dispatcher2);
// Call mockRepository.dispatchEvent() or .addEventListener() as normal
然而,如果你不是,那么按照ZuzEL的回答,按照模拟将是矫枉过正的。
(免责声明:我是asMock的作者,那个文档)