Spec-Zone.ru › Enzyme

.matchesElement(patternNode) => Boolean

Возвращает значение true или false, в зависимости от того, соответствует ли заданный реакт-элемент patternNode дереву рендеринга обертки. Он должен быть оберточкой с одним узлом, и проверяется только корневой узел.

patternNode действует как символ подстановки. Чтобы узел в обертке соответствовал ему:

  • имена тегов должны совпадать
  • содержимое должно совпадать: в текстовых узлах начальные и конечные пробелы игнорируются, но не пробелы внутри. Дочерние элементы должны соответствовать этим правилам рекурсивно.
  • patternNode свойства (атрибуты) должны присутствовать в узлах обертки, но не наоборот. Их значения должны совпадать, если они присутствуют.
  • patternNode свойства CSS стиля должны присутствовать в стиле узла обертки, но не наоборот. Их значения должны совпадать, если они присутствуют.

Аргументы

  1. patternNode (ReactElement): Узел, присутствие которого вы обнаруживаете в единственном узле обертки.

Возвращает

Boolean: true или false, соответствует ли текущая обертка переданной.

Пример

class MyComponent extends React.Component {
  constructor(props) {
    super(props);
    this.handleClick = this.handleClick.bind(this);
  }

  handleClick() {
    // ...
  }

  render() {
    return (
      <button type="button" onClick={this.handleClick} className="foo bar">Hello</button>
    );
  }
}

const wrapper = mount(<MyComponent />);
expect(wrapper.matchesElement(<button>Hello</button>)).to.equal(true);
expect(wrapper.matchesElement(<button className="foo bar">Hello</button>)).to.equal(true);

Общие ошибки

  • .matchesElement() ожидает ReactElement, а не селектор (как и многие другие методы). Убедитесь, что при вызове вы используете ReactElement или выражение JSX.
  • Помните, что этот метод определяет соответствие на основе соответствия дочерних узлов узла.

Связанные методы

  • .containsMatchingElement() => ReactWrapper - ищет все узлы в обертке и ищет их на всей глубине

© 2015 Airbnb, Inc.
Licensed under the MIT License.
https://enzymejs.github.io/enzyme/docs/api/ReactWrapper/matchesElement.html

Spec-Zone.ru

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