Skip to content

Commit

Permalink
fix: Enhance test stability in drive_tests.js (#993)
Browse files Browse the repository at this point in the history
* fix: Enhance test stability in drive_tests.js

In the drive_tests.js file, I improved test stability by introducing
steps in two test cases: "test drive to external link" and
"test drive enabled by default; click link inside data-turbo='false'."

The added  calls ensure that the respective elements (e.g., "#drive_enabled_external"
and "#drive_disabled") are present and visible before interacting with them, reducing the chances of
element unavailability issues during test execution.

This resolves test failures where elements were not immediately accessible, leading to test timeouts.

* Revert 'await page.click(#drive_disabled)' to 'nextBody' for explicit navigation wait

This commit reverts one of the changes made in commit 641947d where I replaced 'nextBody' with 'await page.click(#drive_disabled)'. The reason for this reversion is to stick to explicit waiting for page navigation to ensure that the page has fully transitioned to its new state before making assertions. The 'nextBody' function is used to achieve this waiting behavior, ensuring the reliability of our tests in certain scenarios.

* refactor: Removed unnecessary page.waitForSelector from the PR '641947d'
  • Loading branch information
AfolabiOlaoluwa authored Sep 14, 2023
1 parent 25765d7 commit a5534a2
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions src/tests/functional/drive_tests.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ test.beforeEach(async ({ page }) => {
})

test("test drive enabled by default; click normal link", async ({ page }) => {
page.click("#drive_enabled")
await page.click("#drive_enabled")
await nextBody(page)
assert.equal(pathname(page.url()), path)
})
Expand All @@ -19,16 +19,17 @@ test("test drive to external link", async ({ page }) => {
await route.fulfill({ body: "Hello from the outside world" })
})

page.click("#drive_enabled_external")
await page.click("#drive_enabled_external")
await nextBody(page)

assert.equal(await page.evaluate(() => window.location.href), "https://example.com/")
assert.equal(await page.textContent("body"), "Hello from the outside world")
})

test("test drive enabled by default; click link inside data-turbo='false'", async ({ page }) => {
page.click("#drive_disabled")
await page.click("#drive_disabled")
await nextBody(page)

assert.equal(pathname(page.url()), path)
assert.equal(await visitAction(page), "load")
})

0 comments on commit a5534a2

Please sign in to comment.