Ваш тест будет работать, если вы тестируете успех и терпите неудачу отдельно. Таким образом, в основном есть 2 теста, один добавляет асинхронный обработчик для успешности ваших событий, другой для неудачных. Вот пример 2-х тестов, как я бы подошел к ним ...
[Test(async)]
public function testEventSuccess():void
{
var passThroughData:Object = new Object();
var asyncHandler:Function = Async.asyncHandler(this, authSuccessHandler, 60000, null, timeoutHandler);
caseManager.addEventListener(CaseAuthEvent.AUTH_SUCCESS,
asyncHandler);
caseManager.authenticate("admin", "admin");
}
[Test(async)]
public function testEventFailure():void
{
var passThroughData:Object = new Object();
var asyncHandler:Function = Async.asyncHandler(this, authFailureHandler, 60000, null, timeoutHandler);
caseManager.addEventListener(CaseAuthEvent.AUTH_FAILURE,
asyncHandler);
caseManager.authenticate("admin", "admin");
}
Не забудьте создать новый экземпляр вашего caseManager в вашей функции настройки и рекомендуется удалить ссылку на него в tearDown, как показывает простой фрагмент кода, я только что предположил, что caseManager имеет тип CaseManager. *
[Before]
public function setUp():void
{
caseManager = new CaseManager();
}
[After]
public function tearDown():void
{
caseManager = null;
}