Spec-Zone.ru › Jasmine

Интерфейс: 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API