MarketSquare / MarketSquare/robotframework-browser
Timeout argument not used in ``Promise to wait for download`` keyword in specific case
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 655
- Forks
- 147
- Avg merge
- 5h 38m
- Merged PRs (30d)
- 58
Description
Describe the bug
I am using the keyword Promise to wait for download and i am setting the keyword argument download_timeout to 30 seconds. My default browser timeout is set to 10 seconds -> means: the given timeout as keyword argument is set higher than the normal browser timeout which is used by default.
Now, when executing the test case, the actual download takes more that 10 seconds (approx. 15-20 seconds), but the keyword fails with the message:
TimeoutError: page.waitForEvent: Timeout 10000ms exceeded while waiting for event "download"
=========================== logs ===========================
waiting for event "download"
============================================================
It seems like my given argument value of 30 seconds is not used at all during the keyword execution.
To Reproduce
Steps to reproduce the behavior:
- see description
Expected behavior
The keyword accepts the given argument value of 30 seconds and uses this a timeout for the download promise.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
- OS: iOS
- Browser: chrome
- RF-Browser Version: 19.14.2
Additional context
Add any other context about the problem here.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the implementation of the Promise to wait for download keyword and how its download_timeout argument reaches Playwright's download wait. Reproduce the issue with a 10-second browser timeout and a 30-second keyword timeout using RF-Browser 19.14.2, then verify that a download taking 15–20 seconds succeeds and that a regression test covers the override.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- playwright, python
- Domain
- testing
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 65/100