Files
nomad/ui/tests/pages/components/popover-menu.js
Phil Renaud c9e4351ee5 [ui] Icon migration from {{x-icon}} to Helios (#25353)
* First batch of x-icon to hds::icons

* Bunch more icons and a note for jobrow

* Fixes for tests that depended on specific action names

* Icon-bumped-down specified to solo-icons in table cells

* Class-basing the icon bump and deferring icon svg load in env

* Exec window sidebar icons were looking a little off
2025-03-14 13:22:18 -04:00

44 lines
1003 B
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
import {
clickable,
focusable,
isPresent,
text,
triggerable,
} from 'ember-cli-page-object';
const ARROW_DOWN = 40;
const ESC = 27;
const TAB = 9;
export default (scope) => ({
scope,
isPresent: isPresent(),
label: text('[data-test-popover-trigger]'),
labelHasIcon: isPresent('[data-test-popover-trigger] .hds-icon'),
toggle: clickable('[data-test-popover-trigger]'),
focus: focusable('[data-test-popover-trigger]'),
downArrow: triggerable('keyup', '[data-test-popover-trigger]', {
eventProperties: { keyCode: ARROW_DOWN },
}),
focusNext: triggerable('keyup', '[data-test-popover-trigger]', {
eventProperties: { keyCode: TAB },
}),
esc: triggerable('keydown', '[data-test-popover-trigger]', {
eventProperties: { keyCode: ESC },
}),
menu: {
scope: '[data-test-popover-menu]',
testContainer: '#ember-testing',
resetScope: true,
isOpen: isPresent(),
},
});