## DropdownLayout Testkit

### Import

- unidriver: `import { DropdownLayoutUniDriver } from '@wix/design-system/dist/testkit/unidriver';`
- vanilla: `import { DropdownLayoutTestkit } from '@wix/design-system/dist/testkit';`
- puppeteer: `import { DropdownLayoutTestkit } from '@wix/design-system/dist/testkit/puppeteer';`
- playwright: `import { DropdownLayoutTestkit } from '@wix/design-system/dist/testkit/playwright';`

### API

### exists
- signature: exists()
- returns: Promise<boolean>
- description: Checks whether the component found with the given data hook.

### element
- signature: element()
- returns: Promise<any>
- description: Gets the component root element.

### click
- signature: click()
- returns: Promise<void>
- description: Clicks on the component root element.

### base
- signature: base()
- returns: UniDriver
- description: Returns UniDriver for the base element.

### classes
- signature: classes(_name)
- returns: Promise<any>
- deprecated: true

### clickAtOption
- signature: clickAtOption(index)
- returns: Promise<void>
- description: Clicks on an option at a specific index

### clickAtOptionByDataHook
- signature: clickAtOptionByDataHook(dataHook)
- returns: Promise<void>
- description: Clicks on an option with a specific dataHook

### clickAtOptionWithValue
- signature: clickAtOptionWithValue(value)
- returns: Promise<void>
- description: Clicks on an option with a specific value

### hasTopArrow
- signature: hasTopArrow()
- returns: Promise<boolean>
- deprecated: true

### isDown
- signature: isDown()
- returns: Promise<boolean>
- deprecated: true

### isUp
- signature: isUp()
- returns: Promise<boolean>
- deprecated: true

### isLinkOption
- signature: isLinkOption(position)
- returns: Promise<boolean>

### isOptionADivider
- signature: isOptionADivider(position)
- returns: Promise<boolean>

### isOptionExists
- signature: isOptionExists(optionText)
- returns: Promise<boolean>

### isOptionHovered
- signature: isOptionHovered(index)
- returns: Promise<boolean>

### isOptionSelected
- signature: isOptionSelected(index)
- returns: Promise<boolean>

### isOptionHeightSmall
- signature: isOptionHeightSmall(position)
- returns: Promise<boolean>
- deprecated: true

### isOptionHeightBig
- signature: isOptionHeightBig(position)
- returns: Promise<boolean>
- deprecated: true

### isListItemFocused
- signature: isListItemFocused(position)
- returns: Promise<boolean>

### isShown
- signature: isShown()
- returns: Promise<boolean>

### mouseEnter
- signature: mouseEnter()
- returns: Promise<void>

### mouseEnterAtOption
- signature: mouseEnterAtOption(position)
- returns: Promise<void>

### mouseLeave
- signature: mouseLeave()
- returns: Promise<void>

### mouseClickOutside
- signature: mouseClickOutside()
- deprecated: true

### mouseLeaveAtOption
- signature: mouseLeaveAtOption(position)
- returns: Promise<void>

### optionAt
- signature: optionAt()
- returns: Promise<any>
- deprecated: true

### optionByHook
- signature: optionByHook(hook)
- returns: Promise<DropdownLayoutOptionUniDriver>
- description: This should be a private method since the hook include internal parts ('dropdown-divider-{id}, dropdown-item-{id})') */
- deprecated: true

### optionById
- signature: optionById(optionId)
- returns: Promise<DropdownLayoutOptionUniDriver>
- description: Get Option by id

### optionContentAt
- signature: optionContentAt(position)
- returns: Promise<string>

### optionDriver
- signature: optionDriver(option)
- returns: DropdownLayoutOptionUniDriver

### options
- signature: options()
- returns: Promise<DropdownLayoutOptionUniDriver[]>
- description: Get Options drivers

### optionsContent
- signature: optionsContent()
- returns: Promise<string[]>

### markedOption
- signature: markedOption()
- returns: Promise<string | null>

### getSelectedOptionId
- signature: getSelectedOptionId()
- returns: Promise<string | null>

### optionsLength
- signature: optionsLength()
- returns: Promise<number>

### optionsScrollTop
- signature: optionsScrollTop()
- returns: Promise<number>
- deprecated: true

### pressDownKey
- signature: pressDownKey()
- returns: Promise<void>

### pressUpKey
- signature: pressUpKey()
- returns: Promise<void>

### pressRightKey
- signature: pressRightKey()
- returns: Promise<void>

### pressLeftKey
- signature: pressLeftKey()
- returns: Promise<void>

### pressEnterKey
- signature: pressEnterKey()
- returns: Promise<void>

### pressSpaceKey
- signature: pressSpaceKey()
- returns: Promise<void>

### pressTabKey
- signature: pressTabKey()
- returns: Promise<void>

### pressEscKey
- signature: pressEscKey()
- returns: Promise<void>

### keyDownListItem
- signature: keyDownListItem(position, key)
- returns: Promise<void>

### tabIndex
- signature: tabIndex()
- returns: Promise<number>

### getListItemAttribute
- signature: getListItemAttribute(position, attribute)
- returns: Promise<string>

### getListType
- signature: getListType(dataHook)
- returns: Promise<string>
- description: Returns the list type prop value

### getOptionsContainerRole
- signature: getOptionsContainerRole()
- returns: Promise<string>
