@linzjs/step-ag-grid 7.14.0 → 7.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@linzjs/step-ag-grid",
3
3
  "repository": "github:linz/step-ag-grid.git",
4
4
  "license": "MIT",
5
- "version": "7.14.0",
5
+ "version": "7.16.0",
6
6
  "keywords": [
7
7
  "aggrid",
8
8
  "ag-grid",
@@ -1,6 +1,7 @@
1
1
  import { act, waitFor, within } from "@testing-library/react";
2
2
  import userEvent from "@testing-library/user-event";
3
3
  import { findQuick, getAllQuick, getMatcher, getQuick, queryQuick } from "./testQuick";
4
+ import { isEqual } from "lodash-es";
4
5
 
5
6
  export const countRows = async (within?: HTMLElement): Promise<number> => {
6
7
  return getAllQuick({ tagName: `div[row-id]:not(:empty)` }, within).length;
@@ -98,6 +99,17 @@ export const findMenuOption = async (menuOptionText: string | RegExp): Promise<H
98
99
  );
99
100
  };
100
101
 
102
+ export const validateMenuOptions = async (
103
+ rowId: number | string,
104
+ colId: string,
105
+ expectedMenuOptions: Array<string>,
106
+ ): Promise<boolean> => {
107
+ await editCell(rowId, colId);
108
+ const openMenu = await findOpenMenu();
109
+ const actualOptions = (await within(openMenu).findAllByRole("menuitem")).map((menuItem) => menuItem.textContent);
110
+ return isEqual(actualOptions, expectedMenuOptions);
111
+ };
112
+
101
113
  export const clickMenuOption = async (menuOptionText: string | RegExp): Promise<void> => {
102
114
  const menuOption = await findMenuOption(menuOptionText);
103
115
  await act(async () => {
@@ -137,6 +149,13 @@ export const clickMultiSelectOption = async (value: string): Promise<void> => {
137
149
  menuItem.parentElement && userEvent.click(menuItem.parentElement);
138
150
  };
139
151
 
152
+ export const typeInput = async (value: string): Promise<void> => {
153
+ const openMenu = await findOpenMenu();
154
+ const input = await findQuick({ child: { tagName: "input[type='text']" } }, openMenu);
155
+ userEvent.clear(input);
156
+ userEvent.type(input, value);
157
+ };
158
+
140
159
  export const typeOtherInput = async (value: string): Promise<void> => {
141
160
  const openMenu = await findOpenMenu();
142
161
  const otherInput = await findQuick({ classes: ".subComponent", child: { tagName: "input[type='text']" } }, openMenu);