From 092f8ad7744e360d74e346be234843bac32bb368 Mon Sep 17 00:00:00 2001 From: Thomas Scholtes Date: Thu, 6 Jul 2023 15:00:40 +0200 Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20leave=20line=20selected=20when?= =?UTF-8?q?=20switching=20blobs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #906 Signed-off-by: Thomas Scholtes --- src/components/SquareButton.svelte | 3 ++- src/views/projects/Blob.svelte | 5 ++++- tests/e2e/project.spec.ts | 11 ++++++++--- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/components/SquareButton.svelte b/src/components/SquareButton.svelte index 7f40b3d0c..51b913088 100644 --- a/src/components/SquareButton.svelte +++ b/src/components/SquareButton.svelte @@ -63,9 +63,10 @@ -
{ test("navigate line numbers", async ({ page }) => { await page.goto(`${markdownUrl}/tree/main/cheatsheet.md`); - await page.locator('text="Plain"').click(); + await page.getByRole("button", { name: "Plain" }).click(); - await page.locator('[href="#L5"]').click(); + await page.getByRole("link", { name: "5", exact: true }).click(); await expect(page.locator("#L5")).toHaveClass("line highlight"); await expect(page).toHaveURL(`${markdownUrl}/tree/main/cheatsheet.md#L5`); await expectUrlPersistsReload(page); await expect(page.locator("#L5")).toHaveClass("line highlight"); - await page.locator('[href="#L30"]').click(); + await page.getByRole("link", { name: "30", exact: true }).click(); await expect(page.locator("#L5")).not.toHaveClass("line highlight"); await expect(page.locator("#L30")).toHaveClass("line highlight"); await expect(page).toHaveURL(`${markdownUrl}/tree/main/cheatsheet.md#L30`); + + // Check that we go back to the Markdown view when navigating to a different + // file. + await page.getByRole("link", { name: "footnotes.md" }).click(); + await expect(page.getByRole("button", { name: "Plain" })).toBeVisible(); }); test("navigate deep file hierarchies", async ({ page }) => {