@atomic-testing/component-driver-mui-x-v8 0.58.0 → 0.59.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.
Files changed (31) hide show
  1. package/dist/index.d.mts +199 -0
  2. package/dist/index.d.ts +199 -1
  3. package/dist/index.js +362 -17
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +338 -0
  6. package/dist/index.mjs.map +1 -0
  7. package/package.json +7 -7
  8. package/dist/components/datagrid/DataGridCellQuery.d.ts +0 -9
  9. package/dist/components/datagrid/DataGridCellQuery.js +0 -3
  10. package/dist/components/datagrid/DataGridCellQuery.js.map +0 -1
  11. package/dist/components/datagrid/DataGridDataRowDriver.d.ts +0 -8
  12. package/dist/components/datagrid/DataGridDataRowDriver.js +0 -19
  13. package/dist/components/datagrid/DataGridDataRowDriver.js.map +0 -1
  14. package/dist/components/datagrid/DataGridFooterDriver.d.ts +0 -27
  15. package/dist/components/datagrid/DataGridFooterDriver.js +0 -69
  16. package/dist/components/datagrid/DataGridFooterDriver.js.map +0 -1
  17. package/dist/components/datagrid/DataGridHeaderRowDriver.d.ts +0 -9
  18. package/dist/components/datagrid/DataGridHeaderRowDriver.js +0 -33
  19. package/dist/components/datagrid/DataGridHeaderRowDriver.js.map +0 -1
  20. package/dist/components/datagrid/DataGridPaginationActionDriver.d.ts +0 -25
  21. package/dist/components/datagrid/DataGridPaginationActionDriver.js +0 -64
  22. package/dist/components/datagrid/DataGridPaginationActionDriver.js.map +0 -1
  23. package/dist/components/datagrid/DataGridProDriver.d.ts +0 -93
  24. package/dist/components/datagrid/DataGridProDriver.js +0 -227
  25. package/dist/components/datagrid/DataGridProDriver.js.map +0 -1
  26. package/dist/components/datagrid/DataGridRowDriverBase.d.ts +0 -23
  27. package/dist/components/datagrid/DataGridRowDriverBase.js +0 -107
  28. package/dist/components/datagrid/DataGridRowDriverBase.js.map +0 -1
  29. package/dist/components/datagrid/index.d.ts +0 -4
  30. package/dist/components/datagrid/index.js +0 -25
  31. package/dist/components/datagrid/index.js.map +0 -1
@@ -0,0 +1,199 @@
1
+ import * as _atomic_testing_core5 from "@atomic-testing/core";
2
+ import * as _atomic_testing_core3 from "@atomic-testing/core";
3
+ import * as _atomic_testing_core0 from "@atomic-testing/core";
4
+ import { ComponentDriver, IComponentDriverOption, Interactor, Optional, PartLocator } from "@atomic-testing/core";
5
+ import { HTMLButtonDriver, HTMLElementDriver } from "@atomic-testing/component-driver-html";
6
+
7
+ //#region src/components/datagrid/DataGridCellQuery.d.ts
8
+ interface CellQueryByColumnIndex {
9
+ rowIndex: number;
10
+ columnIndex: number;
11
+ }
12
+ interface CellQueryByColumnField {
13
+ rowIndex: number;
14
+ columnField: string;
15
+ }
16
+ type DataGridCellQuery = CellQueryByColumnIndex | CellQueryByColumnField;
17
+ //#endregion
18
+ //#region src/components/datagrid/DataGridRowDriverBase.d.ts
19
+ /**
20
+ * Base class for data grid row
21
+ */
22
+ declare abstract class DataGridRowDriverBase extends ComponentDriver {
23
+ protected getCellCount(): Promise<number>;
24
+ /**
25
+ * Get the text of each visible cell in the row.
26
+ * Caveat: Because of virtualization, the text of the cell may not be available until the cell is visible.
27
+ * @returns A promise array of text of each visible cell in the row
28
+ */
29
+ getRowText(): Promise<string[]>;
30
+ /**
31
+ * Get the cell driver at the specified index or data field.
32
+ * Caveat: Because of virtualization, the cell may not be available until the cell is visible.
33
+ * @param cellIndexOrField number: column index, string: column field
34
+ * @param driverClass The driver class of the cell. Default is HTMLElementDriver
35
+ * @returns A promise of the cell driver, or null if the cell is not found
36
+ */
37
+ getCell<DriverT extends ComponentDriver>(cellIndexOrField: number | string,
38
+ // number: column index, string: column field
39
+ driverClass?: typeof ComponentDriver): Promise<DriverT | null>;
40
+ protected abstract getCellLocator(): PartLocator;
41
+ }
42
+ //#endregion
43
+ //#region src/components/datagrid/DataGridDataRowDriver.d.ts
44
+ declare class DataGridDataRowDriver extends DataGridRowDriverBase {
45
+ private readonly _dataCellLocator;
46
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
47
+ protected getCellLocator(): PartLocator;
48
+ get driverName(): string;
49
+ }
50
+ //#endregion
51
+ //#region src/components/datagrid/DataGridHeaderRowDriver.d.ts
52
+ declare class DataGridHeaderRowDriver extends DataGridRowDriverBase {
53
+ private readonly _headerCellLocator;
54
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
55
+ getColumnCount(): Promise<number>;
56
+ protected getCellLocator(): PartLocator;
57
+ get driverName(): string;
58
+ }
59
+ //#endregion
60
+ //#region src/components/datagrid/DataGridPaginationActionDriver.d.ts
61
+ declare const parts$2: {
62
+ previousButton: {
63
+ locator: _atomic_testing_core5.CssLocator;
64
+ driver: typeof HTMLButtonDriver;
65
+ };
66
+ nextButton: {
67
+ locator: _atomic_testing_core5.CssLocator;
68
+ driver: typeof HTMLButtonDriver;
69
+ };
70
+ };
71
+ /**
72
+ * Driver for Material UI v6 DataGridPro component.
73
+ * @see https://mui.com/x/react-data-grid/
74
+ */
75
+ declare class DataGridPaginationActionDriver extends ComponentDriver<typeof parts$2> {
76
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
77
+ isPreviousPageEnabled(): Promise<boolean>;
78
+ gotoPreviousPage(): Promise<void>;
79
+ isNextPageEnabled(): Promise<boolean>;
80
+ gotoNextPage(): Promise<void>;
81
+ get driverName(): string;
82
+ }
83
+ //#endregion
84
+ //#region src/components/datagrid/DataGridFooterDriver.d.ts
85
+ declare const parts$1: {
86
+ paginationAction: {
87
+ locator: _atomic_testing_core3.CssLocator;
88
+ driver: typeof DataGridPaginationActionDriver;
89
+ };
90
+ paginationDescription: {
91
+ locator: _atomic_testing_core3.CssLocator;
92
+ driver: typeof HTMLElementDriver;
93
+ };
94
+ };
95
+ /**
96
+ * Driver for Material UI v6 DataGridPro component.
97
+ * @see https://mui.com/x/react-data-grid/
98
+ */
99
+ declare class DataGridFooterDriver extends ComponentDriver<typeof parts$1> {
100
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
101
+ isPreviousPageEnabled(): Promise<boolean>;
102
+ gotoPreviousPage(): Promise<void>;
103
+ isNextPageEnabled(): Promise<boolean>;
104
+ gotoNextPage(): Promise<void>;
105
+ getPaginationDescription(): Promise<Optional<string>>;
106
+ get driverName(): string;
107
+ }
108
+ //#endregion
109
+ //#region src/components/datagrid/DataGridProDriver.d.ts
110
+ declare const parts: {
111
+ headerRow: {
112
+ locator: PartLocator;
113
+ driver: typeof DataGridHeaderRowDriver;
114
+ };
115
+ loading: {
116
+ locator: _atomic_testing_core0.CssLocator;
117
+ driver: typeof HTMLElementDriver;
118
+ };
119
+ skeletonOverlay: {
120
+ locator: _atomic_testing_core0.CssLocator;
121
+ driver: typeof HTMLElementDriver;
122
+ };
123
+ footer: {
124
+ locator: _atomic_testing_core0.CssLocator;
125
+ driver: typeof DataGridFooterDriver;
126
+ };
127
+ };
128
+ /**
129
+ * Driver for Material UI v8 DataGridPro component.
130
+ * V8 DataGridPro component does not support data-testid, to use data-testid
131
+ * to locate the component, you need to put the data-testid on the parent element of the grid
132
+ * @see https://mui.com/x/react-data-grid/
133
+ */
134
+ declare class DataGridProDriver extends ComponentDriver<typeof parts> {
135
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
136
+ /**
137
+ * Checks if the data grid is currently loading.
138
+ * @returns A promise that resolves to a boolean indicating if the data grid is loading.
139
+ */
140
+ isLoading(): Promise<boolean>;
141
+ /**
142
+ * Waits for the data grid to exit the loading state.
143
+ * @param timeoutMs The maximum time to wait for the load to complete, in milliseconds.
144
+ */
145
+ waitForLoad(timeoutMs?: number): Promise<void>;
146
+ /**
147
+ * The number of columns currently displayed in the data grid, note that data grid pro
148
+ * uses virtualize rendering, therefore the column count heavily depends on the viewport size
149
+ * @returns The number of columns currently displayed in the data grid
150
+ */
151
+ getColumnCount(): Promise<number>;
152
+ /**
153
+ * The array text of the header row, note that columns not shown in the viewport may not be included because of virtualize rendering
154
+ * @returns The array of text of the header row
155
+ */
156
+ getHeaderText(): Promise<string[]>;
157
+ /**
158
+ * The number of rows currently displayed in the data grid, note that data grid pro
159
+ * uses virtualize rendering, therefore the row count heavily depends on the viewport size
160
+ * @returns The number of columns currently displayed in the data grid
161
+ */
162
+ getRowCount(): Promise<number>;
163
+ /**
164
+ * Return the row driver for the row at the specified index, if the row does not exist, return null
165
+ * @param rowIndex
166
+ * @returns
167
+ */
168
+ getRow(rowIndex: number): Promise<DataGridHeaderRowDriver | null>;
169
+ /**
170
+ * The array text of the specified row, note that columns not shown in the viewport may not be included because of virtualize rendering
171
+ * @param rowIndex The index of the row
172
+ * @returns The array of text of the specified row
173
+ */
174
+ getRowText(rowIndex: number): Promise<string[]>;
175
+ /**
176
+ * Get the cell driver for the cell, if the cell does not exist, return null
177
+ * The cell driver is default to HTMLElementDriver, you can specify a different driver class
178
+ * @param query The query to locate the cell
179
+ * @param driverClass Optional, the driver class to use for the cell, default to HTMLElementDriver
180
+ * @returns
181
+ */
182
+ getCell<DriverT extends ComponentDriver>(query: DataGridCellQuery, driverClass?: typeof ComponentDriver): Promise<DriverT | null>;
183
+ /**
184
+ * Get the text content of the cell, if the cell does not exist, throw an error
185
+ * @param query The query to locate the cell
186
+ * @returns
187
+ */
188
+ getCellText(query: DataGridCellQuery): Promise<string>;
189
+ isFooterVisible(): Promise<boolean>;
190
+ isPreviousPageEnabled(): Promise<boolean>;
191
+ gotoPreviousPage(): Promise<void>;
192
+ isNextPageEnabled(): Promise<boolean>;
193
+ gotoNextPage(): Promise<void>;
194
+ getPaginationDescription(): Promise<Optional<string>>;
195
+ get driverName(): string;
196
+ }
197
+ //#endregion
198
+ export { CellQueryByColumnField, CellQueryByColumnIndex, DataGridCellQuery, DataGridDataRowDriver, DataGridHeaderRowDriver, DataGridProDriver };
199
+ //# sourceMappingURL=index.d.mts.map
package/dist/index.d.ts CHANGED
@@ -1 +1,199 @@
1
- export * from './components/datagrid';
1
+ import * as _atomic_testing_core5 from "@atomic-testing/core";
2
+ import * as _atomic_testing_core3 from "@atomic-testing/core";
3
+ import * as _atomic_testing_core0 from "@atomic-testing/core";
4
+ import { ComponentDriver, IComponentDriverOption, Interactor, Optional, PartLocator } from "@atomic-testing/core";
5
+ import { HTMLButtonDriver, HTMLElementDriver } from "@atomic-testing/component-driver-html";
6
+
7
+ //#region src/components/datagrid/DataGridCellQuery.d.ts
8
+ interface CellQueryByColumnIndex {
9
+ rowIndex: number;
10
+ columnIndex: number;
11
+ }
12
+ interface CellQueryByColumnField {
13
+ rowIndex: number;
14
+ columnField: string;
15
+ }
16
+ type DataGridCellQuery = CellQueryByColumnIndex | CellQueryByColumnField;
17
+ //#endregion
18
+ //#region src/components/datagrid/DataGridRowDriverBase.d.ts
19
+ /**
20
+ * Base class for data grid row
21
+ */
22
+ declare abstract class DataGridRowDriverBase extends ComponentDriver {
23
+ protected getCellCount(): Promise<number>;
24
+ /**
25
+ * Get the text of each visible cell in the row.
26
+ * Caveat: Because of virtualization, the text of the cell may not be available until the cell is visible.
27
+ * @returns A promise array of text of each visible cell in the row
28
+ */
29
+ getRowText(): Promise<string[]>;
30
+ /**
31
+ * Get the cell driver at the specified index or data field.
32
+ * Caveat: Because of virtualization, the cell may not be available until the cell is visible.
33
+ * @param cellIndexOrField number: column index, string: column field
34
+ * @param driverClass The driver class of the cell. Default is HTMLElementDriver
35
+ * @returns A promise of the cell driver, or null if the cell is not found
36
+ */
37
+ getCell<DriverT extends ComponentDriver>(cellIndexOrField: number | string,
38
+ // number: column index, string: column field
39
+ driverClass?: typeof ComponentDriver): Promise<DriverT | null>;
40
+ protected abstract getCellLocator(): PartLocator;
41
+ }
42
+ //#endregion
43
+ //#region src/components/datagrid/DataGridDataRowDriver.d.ts
44
+ declare class DataGridDataRowDriver extends DataGridRowDriverBase {
45
+ private readonly _dataCellLocator;
46
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
47
+ protected getCellLocator(): PartLocator;
48
+ get driverName(): string;
49
+ }
50
+ //#endregion
51
+ //#region src/components/datagrid/DataGridHeaderRowDriver.d.ts
52
+ declare class DataGridHeaderRowDriver extends DataGridRowDriverBase {
53
+ private readonly _headerCellLocator;
54
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
55
+ getColumnCount(): Promise<number>;
56
+ protected getCellLocator(): PartLocator;
57
+ get driverName(): string;
58
+ }
59
+ //#endregion
60
+ //#region src/components/datagrid/DataGridPaginationActionDriver.d.ts
61
+ declare const parts$2: {
62
+ previousButton: {
63
+ locator: _atomic_testing_core5.CssLocator;
64
+ driver: typeof HTMLButtonDriver;
65
+ };
66
+ nextButton: {
67
+ locator: _atomic_testing_core5.CssLocator;
68
+ driver: typeof HTMLButtonDriver;
69
+ };
70
+ };
71
+ /**
72
+ * Driver for Material UI v6 DataGridPro component.
73
+ * @see https://mui.com/x/react-data-grid/
74
+ */
75
+ declare class DataGridPaginationActionDriver extends ComponentDriver<typeof parts$2> {
76
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
77
+ isPreviousPageEnabled(): Promise<boolean>;
78
+ gotoPreviousPage(): Promise<void>;
79
+ isNextPageEnabled(): Promise<boolean>;
80
+ gotoNextPage(): Promise<void>;
81
+ get driverName(): string;
82
+ }
83
+ //#endregion
84
+ //#region src/components/datagrid/DataGridFooterDriver.d.ts
85
+ declare const parts$1: {
86
+ paginationAction: {
87
+ locator: _atomic_testing_core3.CssLocator;
88
+ driver: typeof DataGridPaginationActionDriver;
89
+ };
90
+ paginationDescription: {
91
+ locator: _atomic_testing_core3.CssLocator;
92
+ driver: typeof HTMLElementDriver;
93
+ };
94
+ };
95
+ /**
96
+ * Driver for Material UI v6 DataGridPro component.
97
+ * @see https://mui.com/x/react-data-grid/
98
+ */
99
+ declare class DataGridFooterDriver extends ComponentDriver<typeof parts$1> {
100
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
101
+ isPreviousPageEnabled(): Promise<boolean>;
102
+ gotoPreviousPage(): Promise<void>;
103
+ isNextPageEnabled(): Promise<boolean>;
104
+ gotoNextPage(): Promise<void>;
105
+ getPaginationDescription(): Promise<Optional<string>>;
106
+ get driverName(): string;
107
+ }
108
+ //#endregion
109
+ //#region src/components/datagrid/DataGridProDriver.d.ts
110
+ declare const parts: {
111
+ headerRow: {
112
+ locator: PartLocator;
113
+ driver: typeof DataGridHeaderRowDriver;
114
+ };
115
+ loading: {
116
+ locator: _atomic_testing_core0.CssLocator;
117
+ driver: typeof HTMLElementDriver;
118
+ };
119
+ skeletonOverlay: {
120
+ locator: _atomic_testing_core0.CssLocator;
121
+ driver: typeof HTMLElementDriver;
122
+ };
123
+ footer: {
124
+ locator: _atomic_testing_core0.CssLocator;
125
+ driver: typeof DataGridFooterDriver;
126
+ };
127
+ };
128
+ /**
129
+ * Driver for Material UI v8 DataGridPro component.
130
+ * V8 DataGridPro component does not support data-testid, to use data-testid
131
+ * to locate the component, you need to put the data-testid on the parent element of the grid
132
+ * @see https://mui.com/x/react-data-grid/
133
+ */
134
+ declare class DataGridProDriver extends ComponentDriver<typeof parts> {
135
+ constructor(locator: PartLocator, interactor: Interactor, option?: Partial<IComponentDriverOption>);
136
+ /**
137
+ * Checks if the data grid is currently loading.
138
+ * @returns A promise that resolves to a boolean indicating if the data grid is loading.
139
+ */
140
+ isLoading(): Promise<boolean>;
141
+ /**
142
+ * Waits for the data grid to exit the loading state.
143
+ * @param timeoutMs The maximum time to wait for the load to complete, in milliseconds.
144
+ */
145
+ waitForLoad(timeoutMs?: number): Promise<void>;
146
+ /**
147
+ * The number of columns currently displayed in the data grid, note that data grid pro
148
+ * uses virtualize rendering, therefore the column count heavily depends on the viewport size
149
+ * @returns The number of columns currently displayed in the data grid
150
+ */
151
+ getColumnCount(): Promise<number>;
152
+ /**
153
+ * The array text of the header row, note that columns not shown in the viewport may not be included because of virtualize rendering
154
+ * @returns The array of text of the header row
155
+ */
156
+ getHeaderText(): Promise<string[]>;
157
+ /**
158
+ * The number of rows currently displayed in the data grid, note that data grid pro
159
+ * uses virtualize rendering, therefore the row count heavily depends on the viewport size
160
+ * @returns The number of columns currently displayed in the data grid
161
+ */
162
+ getRowCount(): Promise<number>;
163
+ /**
164
+ * Return the row driver for the row at the specified index, if the row does not exist, return null
165
+ * @param rowIndex
166
+ * @returns
167
+ */
168
+ getRow(rowIndex: number): Promise<DataGridHeaderRowDriver | null>;
169
+ /**
170
+ * The array text of the specified row, note that columns not shown in the viewport may not be included because of virtualize rendering
171
+ * @param rowIndex The index of the row
172
+ * @returns The array of text of the specified row
173
+ */
174
+ getRowText(rowIndex: number): Promise<string[]>;
175
+ /**
176
+ * Get the cell driver for the cell, if the cell does not exist, return null
177
+ * The cell driver is default to HTMLElementDriver, you can specify a different driver class
178
+ * @param query The query to locate the cell
179
+ * @param driverClass Optional, the driver class to use for the cell, default to HTMLElementDriver
180
+ * @returns
181
+ */
182
+ getCell<DriverT extends ComponentDriver>(query: DataGridCellQuery, driverClass?: typeof ComponentDriver): Promise<DriverT | null>;
183
+ /**
184
+ * Get the text content of the cell, if the cell does not exist, throw an error
185
+ * @param query The query to locate the cell
186
+ * @returns
187
+ */
188
+ getCellText(query: DataGridCellQuery): Promise<string>;
189
+ isFooterVisible(): Promise<boolean>;
190
+ isPreviousPageEnabled(): Promise<boolean>;
191
+ gotoPreviousPage(): Promise<void>;
192
+ isNextPageEnabled(): Promise<boolean>;
193
+ gotoNextPage(): Promise<void>;
194
+ getPaginationDescription(): Promise<Optional<string>>;
195
+ get driverName(): string;
196
+ }
197
+ //#endregion
198
+ export { CellQueryByColumnField, CellQueryByColumnIndex, DataGridCellQuery, DataGridDataRowDriver, DataGridHeaderRowDriver, DataGridProDriver };
199
+ //# sourceMappingURL=index.d.ts.map