Hi,
I'm trying to use the SequenceRunner for the first time and facing a problem,
it seems I can't have more than one addAssertHandler by SequenceRunner:
It looks like it uses the last addAssertHandler in both cases.
[Test(async, description="Verify the Thread State sequence
New->Running->Terminated")]
public function testNewToRunningToTerminate():void {
testStateNew();
const runner:SequenceRunner = new SequenceRunner(this);
runner.addStep(new SequenceCaller(_thread, _thread.start));
runner.addStep(new SequenceWaiter(_thread,
ThreadStateEvent.THREAD_STATE, 2000));
// If I comment this one, everything works as expected.
runner.addAssertHandler(thread_stateRunning, null);
runner.addStep(new SequenceWaiter(_thread, ThreadResultEvent.RESULT,
2000));
runner.addStep(new SequenceCaller(_thread, _thread.terminate));
runner.addStep(new SequenceWaiter(_thread,
ThreadStateEvent.THREAD_STATE, 2000));
runner.addAssertHandler(thread_stateTerminate, null);
runner.run();
}
private function thread_stateRunning(e:ThreadStateEvent,
passThroughData:Object = null):void {
testStateRunning();
}
private function thread_stateTerminate(e:ThreadStateEvent,
passThroughData:Object = null):void {
testStateTerminated();
}
What did I miss ?
How can I manage that ?
Frédéric THOMAS