Интерфейс: AsymmetricEqualityTester
AsymmetricEqualityTester
Асимметричный тестер равенства — это объект, который может сопоставлять несколько объектов. Примеры включают jasmine.any() и jasmine.stringMatching(). Jasmine включает в себя ряд встроенных асимметричных тестеров равенства, таких как jasmine.objectContaining. Также поддерживаются пользовательские асимметричные тестеры равенства.
Асимметричные тестеры равенства работают с любым соответствием, включая пользовательские кастомные соответствия, которые используют MatchersUtil#equals или MatchersUtil#contains.
- С момента:
- 2.0.0
- См.:
Пример
function numberDivisibleBy(divisor) {
return {
asymmetricMatch: function(n) {
return typeof n === 'number' && n % divisor === 0;
},
jasmineToString: function() {
return `<a number divisible by ${divisor}>`;
}
};
}
var actual = {
n: 2,
otherFields: "don't care"
};
expect(actual).toEqual(jasmine.objectContaining({n: numberDivisibleBy(2)})); Методы
asymmetricMatch(value, matchersUtil) → {Булево}
Определяет, соответствует ли значение данному тестеру
Параметры:
| Имя | Тип | Описание |
|---|---|---|
value | любое | Значение для проверки |
matchersUtil | MatchersUtil | Утилиты для проверки равенства и т.д. |
Возвращаемое значение:
- Тип
- Булево
jasmineToString(pp) → {Строка}
Возвращает строковое представление этого тестера для использования в сообщениях об ошибках соответствия
Параметры:
| Имя | Тип | Описание |
|---|---|---|
pp | функция | Функция, которая принимает значение и возвращает отформатированное представление |
Возвращаемое значение:
- Тип
- Строка
© 2008–2019 Pivotal Labs
Licensed under the MIT License.
https://jasmine.github.io/api/4.0/AsymmetricEqualityTester.html