Пространство имён: async-matchers
async-matchers
Асинхронные матеры, которые работают с фактическим значением, являющимся обещанием, и возвращают обещание.
Большинство асинхронных матеров будут бесконечно ждать, пока обещание не будет выполнено или отклонено, что приведёт к таймауту спецификации, если это никогда не произойдёт. Если вы ожидаете, что обещание уже будет выполнено или отклонено в момент вызова матера, вы можете использовать модификатор async-matchers#already, чтобы получить более быстрое сообщение об ошибке с более полезным сообщением.
Примечание: Спецификации должны ожидать результат каждого асинхронного матера, возвращать обещание, возвращённое матером, или возвращать обещание, полученное из возвращённого матером. В противном случае матер не будет оценён до завершения спецификации.
Примеры
// Good await expectAsync(aPromise).toBeResolved();
// Good return expectAsync(aPromise).toBeResolved();
// Good
return expectAsync(aPromise).toBeResolved()
.then(function() {
// more spec code
}); // Bad expectAsync(aPromise).toBeResolved();
Члены
already :async-matchers
Немедленно сообщить об ошибке, если фактическое значение находится в ожидании. В противном случае оценить матер.
Тип:
- С:
- 3.8.0
Примеры
await expectAsync(myPromise).already.toBeResolved();
return expectAsync(myPromise).already.toBeResolved();
not :async-matchers
Инвертировать матер в соответствии с этим expectAsync
Тип:
Примеры
await expectAsync(myPromise).not.toBeResolved();
return expectAsync(myPromise).not.toBeResolved();
Методы
(async) toBePending()
Ожидать, что обещание находится в ожидании, т.е. обещание не выполнено и не отклонено.
- С:
- 3.6
Пример
await expectAsync(aPromise).toBePending();
(async) toBeRejected()
Ожидать, что обещание будет отклонено.
- С:
- 3.1.0
Примеры
await expectAsync(aPromise).toBeRejected();
return expectAsync(aPromise).toBeRejected();
(async) toBeRejectedWith(expected)
Ожидать, что обещание будет отклонено со значением, равным ожидаемому, используя глубокое сравнение равенства.
Параметры:
| Имя | Тип | Описание |
|---|---|---|
expected | Объект | Значение, с которым ожидается отклонение обещания |
- С:
- 3.3.0
Примеры
await expectAsync(aPromise).toBeRejectedWith({prop: 'value'}); return expectAsync(aPromise).toBeRejectedWith({prop: 'value'}); (async) toBeRejectedWithError(expectedopt, messageopt)
Ожидать, что обещание будет отклонено со значением, соответствующим ожидаемому.
Параметры:
| Имя | Тип | Атрибуты | Описание |
|---|---|---|---|
expected | Ошибка | <необязательно> |
|
message | RegExp | Строка | <необязательно> | Сообщение, которое должно быть установлено для брошенной |
- С:
- 3.5.0
Пример
await expectAsync(aPromise).toBeRejectedWithError(MyCustomError, 'Error message');
await expectAsync(aPromise).toBeRejectedWithError(MyCustomError, /Error message/);
await expectAsync(aPromise).toBeRejectedWithError(MyCustomError);
await expectAsync(aPromise).toBeRejectedWithError('Error message');
return expectAsync(aPromise).toBeRejectedWithError(/Error message/); (async) toBeResolved()
Ожидать, что обещание будет выполнено.
- С:
- 3.1.0
Примеры
await expectAsync(aPromise).toBeResolved();
return expectAsync(aPromise).toBeResolved();
(async) toBeResolvedTo(expected)
Ожидать, что обещание будет выполнено со значением, равным ожидаемому, используя глубокое сравнение равенства.
Параметры:
| Имя | Тип | Описание |
|---|---|---|
expected | Объект | Значение, к которому ожидается выполнение обещания |
- С:
- 3.1.0
Примеры
await expectAsync(aPromise).toBeResolvedTo({prop: 'value'}); return expectAsync(aPromise).toBeResolvedTo({prop: 'value'}); withContext(message) → {async-matchers}
Добавить контекст для expectAsync
Параметры:
| Имя | Тип | Описание |
|---|---|---|
message | Строка | Дополнительный контекст для отображения при сбое асинхронного матера |
- С:
- 3.3.0
Возвращает:
- Тип
- async-matchers
© 2008–2019 Pivotal Labs
Licensed under the MIT License.
https://jasmine.github.io/api/4.0/async-matchers.html