@skbkontur/react-selenium-testing

Транслирует пропы реакт-компонентов в атрибуты ассоциированных html-элементов. Ассоциированный элемент, в который транслируются пропы - это первый `Element`, найденный внутри компонента.

Usage no npm install needed!

<script type="module">
  import skbkonturReactSeleniumTesting from 'https://cdn.skypack.dev/@skbkontur/react-selenium-testing';
</script>

README

@skbkontur/react-selenium-testing

Транслирует пропы реакт-компонентов в атрибуты ассоциированных html-элементов. Ассоциированный элемент, в который транслируются пропы - это первый Element, найденный внутри компонента.

Пакет призван заменить файл react-selenium-testing.js из пакета Kontur.ReactUI.SeleniumTesting. Основные проблемы старого файла: отсутствие типов, комментариев и тестов. Основной функционал переехал в пакет @skbkontur/react-sorge и тестируется для разных версий Реакта. Непосредственная трансляция пропов реализована в этом пакете.

Для кастомизации используется механизм из файла react-selenium-testing-custom-props.js. Можете его оставить.

Глобальный объект ReactSeleniumTesting со следующими свойствами:

acceptFiberNode

По-умлочанию пропускаются только типы: ClassComponent, FunctionComponent, ContextConsumer, ContextProvider, Fragment.

acceptFiberNode?: (prevAcceptResult: boolean, f: Fiber) => boolean;

acceptDOMNode

По-умолчанию это базовый класс Element, обеспечивающий методы для работы с атрибутами.

acceptDOMNode?: (prevAcceptResult: boolean, node: Element) => boolean;

acceptComponentName

По-умолчанию пропускаются только компоненты, у которых удалось получить имя используя хелпер getDisplayName() из @skbkontur/react-sorge.

acceptComponentName?: (prevAcceptResult: boolean, name: string) => boolean;

attributeWhiteList

acceptAttribute?: (prevAcceptResult: boolean, componentName: string, propName: string) => boolean

acceptAttribute

attributeWhiteList?: {[key: string]: Array<string|RegExp>};