为什么FlexUnit中的asyncHandler在捕获TIMERCOMPLETE事件时失败?

时间:2011-02-22 06:01:54

标签: flex flexunit4

我正在使用flex单元测试时间。 Follwing是我试过的代码,  它总是去cmdFailed函数(超时功能)。我是flex单位的新手。非常感谢任何帮助。

[前]

    public function setUp():void
    {           

        timer = new Timer(12000);                                           
    }

         [Test(async,order=1)]
    public function teststorapidpresenter():void
    {               

        timer.addEventListener(TimerEvent.TIMER_COMPLETE,Async.asyncHandler(this,cmdHandler,20000,null,cmdFailed));
        timer.start();          
    }

        private function cmdHandler(event:TimerEvent,passThroughData:Object):void
    {           

    }

    private function cmdFailed(event:Event):void
    {
        fail("Event not dispatched");
    }

1 个答案:

答案 0 :(得分:2)

是的,经典错误在这里。 默认情况下,计时器的repeatCount属性为0。 这意味着时间永远不会停止,因此永远不会调度TIMER_COMPLETE。

timer.repeatCount = 1

它应该有效