UNPKG

react-kiwi-dropdown

Version:

| Name | Type | Description | | --------------------------- | -------------------- | ----------- | | options | array | | selectedOption | string | | onCha

46 lines (44 loc) 1.61 kB
/* eslint-env mocha */ import expect from 'expect'; import { elementType } from 'jsx-ast-utils'; import isNonInteractiveRole from '../../../src/util/isNonInteractiveRole'; import { genElementSymbol, genInteractiveRoleElements, genNonInteractiveRoleElements, } from '../../../__mocks__/genInteractives'; describe('isNonInteractiveRole', () => { describe('JSX Components (no tagName)', () => { it('should identify them as interactive role elements', () => { expect(isNonInteractiveRole(undefined, [])) .toBe(false); }); }); describe('elements with a non-interactive role', () => { genNonInteractiveRoleElements().forEach(({ openingElement }) => { const { attributes } = openingElement; it(`should identify \`${genElementSymbol(openingElement)}\` as non-interactive role element`, () => { expect(isNonInteractiveRole( elementType(openingElement), attributes, )).toBe(true); }); }); }); describe('elements without a role', () => { it('should not identify them as non-interactive role elements', () => { expect(isNonInteractiveRole('div', [])).toBe(false); }); }); describe('elements with an interactive role', () => { genInteractiveRoleElements().forEach(({ openingElement }) => { const { attributes } = openingElement; it(`should NOT identify \`${genElementSymbol(openingElement)}\` as a non-interactive role element`, () => { expect(isNonInteractiveRole( elementType(openingElement), attributes, )).toBe(false); }); }); }); });