From da7b8d400e96ceff0eec834badd891bc5d5f154d Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Mon, 26 Feb 2024 15:11:35 +0100 Subject: [PATCH] Fix flaky mobile UI tests (#7278) * Fix flaky mobile UI tests * fix test * Update Playwright Snapshots * Update Playwright Snapshots * remove unused import --------- Co-authored-by: github-actions[bot] --- ui-tests/test/mobile.spec.ts | 25 +++++++++--------- .../notebook-chromium-linux.png | Bin 12988 -> 7878 bytes .../notebook-firefox-linux.png | Bin 18466 -> 8056 bytes 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/ui-tests/test/mobile.spec.ts b/ui-tests/test/mobile.spec.ts index 4bbf0951c2..7817171a76 100644 --- a/ui-tests/test/mobile.spec.ts +++ b/ui-tests/test/mobile.spec.ts @@ -1,8 +1,6 @@ // Copyright (c) Jupyter Development Team. // Distributed under the terms of the Modified BSD License. -import path from 'path'; - import { expect } from '@playwright/test'; import { test } from './fixtures'; @@ -28,26 +26,29 @@ test.describe('Mobile', () => { tmpPath, browserName, }) => { - const notebook = 'empty.ipynb'; - await page.contents.uploadFile( - path.resolve(__dirname, `./notebooks/${notebook}`), - `${tmpPath}/${notebook}` - ); - await page.goto(`notebooks/${tmpPath}/${notebook}`); + await page.goto(`tree/${tmpPath}`); + + // Create a new notebook + const [notebook] = await Promise.all([ + page.waitForEvent('popup'), + page.click('text="New"'), + page.click('text="Python 3 (ipykernel)"'), + ]); // wait for the kernel status animations to be finished - await waitForKernelReady(page); + await waitForKernelReady(notebook); // force switching back to command mode to avoid capturing the cursor in the screenshot - await page.evaluate(async () => { + await notebook.evaluate(async () => { await window.jupyterapp.commands.execute('notebook:enter-command-mode'); }); // TODO: remove if (browserName === 'firefox') { - await hideAddCellButton(page); + await hideAddCellButton(notebook); } - expect(await page.screenshot()).toMatchSnapshot('notebook.png'); + expect(await notebook.screenshot()).toMatchSnapshot('notebook.png'); + await notebook.close(); }); }); diff --git a/ui-tests/test/mobile.spec.ts-snapshots/notebook-chromium-linux.png b/ui-tests/test/mobile.spec.ts-snapshots/notebook-chromium-linux.png index 9535be4aa87ccff3fea7d250d92a6daf089566b1..add05a9ae6bb3e740e32f9ac1c33059168770e6c 100644 GIT binary patch literal 7878 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 KsQjz9e)%7FXM+&{ literal 12988 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