Какое-то время назад я сделал одну штучку и захотел погонять ее по тестам. Штучка такая — некоторый набор состояний с переходами, которые при смене состояний во время выполнения перехода откатываются до предыдущего ( или нескольких предыдущих ).
Наткнулся на кучу проблем с асинхронными тестами. Все, что я пробовал, предлагало хороший функционал для синхронных тестов, а вот с асинхронными тестами было как-то грустно. Под асинхронностью, например в AsUnit ( там есть специальный класс для этого ), понимается, что сначала я асинхронно гружу какие-то данные для работы класса, а потом провожу обычные синхронные тесты.
И только в каком-то заросшем паутиной уголке интернета мне показали вот такой примерчик:
public class AsyncTest extends TestCase
{public function AsyncTest(testMethod:String=null)
{
super(testMethod);
}public function test(): void
{
var handler:Function = function(event:Event):void {
assertTrue( true );
}var t: Timer = new Timer(1000, 1);
t.addEventListener( TimerEvent.TIMER_COMPLETE, addAsync(handler, 2000) );
t.start();}
}
А именно addAsync(handler, 2000)

0 Response to “AsUnit и асинхронные тесты”