|
200 | 200 | const canvas = within(canvasElement);
|
201 | 201 |
|
202 | 202 | const cell_400 = canvas.getAllByRole("cell")[5];
|
203 |
| - userEvent.click(cell_400); |
| 203 | + await userEvent.click(cell_400); |
204 | 204 |
|
205 |
| - const open_dialog_btn = within(cell_400).getByText("⋮"); |
| 205 | + const open_dialog_btn = await within(cell_400).findByRole("button", { |
| 206 | + name: "⋮" |
| 207 | + }); |
206 | 208 | await userEvent.click(open_dialog_btn);
|
207 | 209 |
|
208 | 210 | const add_row_btn = canvas.getByText("Add row above");
|
|
227 | 229 | }}
|
228 | 230 | />
|
229 | 231 |
|
| 232 | +<Story |
| 233 | + name="Dataframe with multiple selection interactions" |
| 234 | + args={{ |
| 235 | + values: [ |
| 236 | + [1, 2, 3, 4], |
| 237 | + [5, 6, 7, 8], |
| 238 | + [9, 10, 11, 12], |
| 239 | + [13, 14, 15, 16] |
| 240 | + ], |
| 241 | + col_count: [4, "dynamic"], |
| 242 | + row_count: [4, "dynamic"], |
| 243 | + headers: ["A", "B", "C", "D"], |
| 244 | + editable: true |
| 245 | + }} |
| 246 | + play={async ({ canvasElement }) => { |
| 247 | + const canvas = within(canvasElement); |
| 248 | + const cells = canvas.getAllByRole("cell"); |
| 249 | + const user = userEvent.setup(); |
| 250 | + |
| 251 | + // cmd+click to select non-contiguous cells |
| 252 | + await user.keyboard("[MetaLeft>]"); |
| 253 | + await user.click(cells[4]); |
| 254 | + await user.click(cells[6]); |
| 255 | + await user.click(cells[2]); |
| 256 | + await user.keyboard("[/MetaLeft]"); |
| 257 | + |
| 258 | + // shift+click to select a range |
| 259 | + await user.keyboard("[ShiftLeft>]"); |
| 260 | + await user.click(cells[7]); |
| 261 | + await user.click(cells[6]); |
| 262 | + await user.keyboard("[/ShiftLeft]"); |
| 263 | + |
| 264 | + // clear selected cells |
| 265 | + await user.keyboard("{Delete}"); |
| 266 | + |
| 267 | + // verify cells were cleared by clicking one |
| 268 | + await user.click(cells[2]); |
| 269 | + }} |
| 270 | +/> |
| 271 | + |
230 | 272 | <Story
|
231 | 273 | name="Dataframe toolbar interactions"
|
232 | 274 | args={{
|
233 | 275 | col_count: [3, "dynamic"],
|
234 | 276 | row_count: [2, "dynamic"],
|
235 |
| - headers: ["Math", "Reading", "Writifdsfsng"], |
| 277 | + headers: ["Math", "Reading", "Writing"], |
236 | 278 | values: [
|
237 | 279 | [800, 100, 400],
|
238 | 280 | [200, 800, 700]
|
|
244 | 286 | const canvas = within(canvasElement);
|
245 | 287 |
|
246 | 288 | const copy_button = canvas.getByRole("button", {
|
247 |
| - name: /copy table data/i |
| 289 | + name: "Copy table data" |
248 | 290 | });
|
249 | 291 | await userEvent.click(copy_button);
|
250 | 292 |
|
251 | 293 | const fullscreen_button = canvas.getByRole("button", {
|
252 |
| - name: /enter fullscreen/i |
| 294 | + name: "Enter fullscreen" |
253 | 295 | });
|
254 | 296 | await userEvent.click(fullscreen_button);
|
255 | 297 |
|
|
0 commit comments