Как я могу протестировать последовательность событий во FlexUnit 4?

StackOverflow https://stackoverflow.com/questions/2238773

Вопрос

У меня есть компонент, который при создании отправляет два события для заполнения полей данных.События должны оставаться отдельными, потому что они используются в другом месте для разных действий.

Я хочу написать асинхронный тест flexunit, чтобы подтвердить, что оба эти события отправлены.Проблема в том, что это оба варианта одного и того же события.

Вот код:

Компонент:

internal function creationComplete(): void {
    new GetDataEvent(GetDataEvent.GET_DATA, "aField").dispatch();
    new GetDataEvent(GetDataEvent.GET_DATA, "anotherField").dispatch();
}

Тест (насколько он у меня есть):

[Test(async)]
public function creationCompleteShouldLoadRequiredData(): void {
    Async.handleEvent(this, new CairngormEventDispatcherAdapter(), GetDataEvent.GET_DATA,
            function(event: Event, ...rest): void {
                assertThat(event, hasProperty("data", hasProperty("field", "aField")));
            });
    fixture.creationComplete();
}

Дело в том, что это проверяет только то, что отправлено первое событие get data, и, что еще хуже, зависит от порядка отправки событий.Как я могу проверить, что оба этих события в конечном итоге отправляются этим методом, независимо от их порядка?

Это было полезно?

Решение

Проверьте Последовательности: http://docs.flexunit.org/index.php?title=Sequences#Sequences_from_Fluint

Вы могли бы добавить SequenceWaiter для первого события и проверить второе событие с помощью final AssertHandler.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top