UNPKG

wix-style-react

Version:
33 lines (29 loc) 1.54 kB
import { baseUniDriverFactory } from 'wix-ui-test-utils/base-driver'; import { testkit as inputUniDriverFactory } from '../Input/Input.uni.driver'; import { labelledElementDriverFactory as labelledElementUniDriverFactory } from '../LabelledElement/LabelledElement.uni.driver'; import dataHooks from './dataHooks'; export const inputWithLabelDriverFactory = base => { const inputWrapperSelector = `[data-hook="${dataHooks.input}"]`; const labelledElementSelector = `[data-hook="${dataHooks.labelledElement}"]`; const statusMessageSelector = `[data-hook="${dataHooks.errorMessage}"]`; const inputDriver = inputUniDriverFactory(base.$(inputWrapperSelector)); const labelledElementDriver = labelledElementUniDriverFactory( base.$(labelledElementSelector), ); const errorMessageDriver = base.$(statusMessageSelector); return { ...baseUniDriverFactory(base), /** Gets the amount of rendered suffixes */ getSuffixesCount: () => base.$$(`[data-hook="suffix-container"]`).count(), /** Returns true if an error status message exists */ hasErrorMessage: () => errorMessageDriver.exists(), /** Gets the error status message */ getErrorMessage: () => errorMessageDriver.text(), getValue: () => inputDriver.getValue(), clickInput: () => inputDriver.click(), enterText: value => inputDriver.enterText(value), getLabelText: () => labelledElementDriver.getLabelText(), isCustomInput: () => inputDriver.isCustomInput(), isFocusedStyle: () => inputDriver.isFocusedStyle(), }; };