UNPKG

wix-style-react

Version:
65 lines 2.85 kB
import { baseUniDriverFactory } from '../test-utils/utils/unidriver'; // @ts-ignore import { textUniDriverFactory } from '../Text/Text.uni.driver'; // @ts-ignore import { infoIconDriverFactory } from '../InfoIcon/InfoIcon.uni.driver'; import { dataHooks } from './constants'; export const fieldSetDriverFactory = (base, body) => { const getCharactersCounter = async () => await base.get(`[data-hook*="${dataHooks.counter}"]`); return { ...baseUniDriverFactory(base), /** get legend text */ getLegendText: async () => { const baseUniDriverElement = await base.get(`[data-hook*="${dataHooks.label}"]`); return baseUniDriverElement.text(); }, /** returns legend size */ getLegendSize: async () => { const labelDriver = textUniDriverFactory(await base.get(`[data-hook="${dataHooks.label}"]`)); return labelDriver.getSize(); }, /** returns legend placement */ getLegendPlacement: async () => { return (await base.attr('data-legend-placement')); }, /** returns legend alignment */ getLegendAlignment: async () => { return (await base.attr('data-legend-alignment')); }, /** returns true whether field set is required */ isRequired: async () => (await base.get(`[data-hook*="${dataHooks.asterisk}"]`)).exists(), /** returns the length left */ getCharCount: async () => { const counter = await getCharactersCounter(); return parseInt(await counter.text(), 10); }, /** returns whether the field set length is exceeded */ isLengthExceeded: async () => { const counter = await getCharactersCounter(); const length = parseInt(await counter.text(), 10); return length < 0; }, /** returns tooltip text of the info content */ getInfoContent: async () => { const testkit = infoIconDriverFactory(await base.get(`[data-hook="${dataHooks.infoIcon}"]`), body); return testkit.getContent(); }, getAlignment: async () => { return (await base.attr('data-alignment')); }, getDirection: async () => { return (await base.attr('data-direction')); }, getGap: async () => { return (await base.attr('data-gap')); }, /** returns status message text */ getStatusMessage: async () => { const testkit = textUniDriverFactory(base.$(`[data-hook="${dataHooks.statusMessage}"]`)); return testkit.getText(); }, /** return true if it has a given status */ hasStatus: async (status) => (await base.attr('data-status')) === status, }; }; //# sourceMappingURL=FieldSet.uni.driver.js.map