Closed
Bug 1358029
Opened 7 years ago
Closed 6 years ago
Updating timeout values does not update capabilities object of content framescript
Categories
(Remote Protocol :: Marionette, enhancement, P3)
Tracking
(Not tracked)
RESOLVED
DUPLICATE
of bug 1379490
People
(Reporter: whimboo, Unassigned)
References
Details
When a new session is created in a framescript we pass in the capabilities. Sadly we do not update the Map when the timeout values are getting changed in driver.js. As such the listener keeps the default values.
Comment 1•7 years ago
|
||
We can approach this in a couple of different ways. One is to make all listener calls involving one of the three timeouts explicit arguments. This means for example that every time this.listener.get(…) is called from driver.js, it needs to include a pageTimeout argument. Another approach is to make a synchronous service á là cookies in driver.js that listener.js can query to get the latest updated values. We can use proxy.toChrome for this, like we do for cookies and imported scripts at http://searchfox.org/mozilla-central/source/testing/marionette/listener.js#90-92. I don’t have very strong feelings about this, but I feel perhaps that the first is easier and more explicit. It is a different situation to pass along some arguments necessary for the successful execution of an operation, than a listener function possibly having to query some large-ish state in driver.js.
Reporter | ||
Comment 2•7 years ago
|
||
The first is easier but might end-up with lots of parameters we have to pass into those calls. That is because I think we should not make this exclusive for timeouts only, but also other status like pageLoadStrategy. Or would you exclude those parameters here, which will never change and are part of the capabilities?
Comment 3•7 years ago
|
||
It’s only mutable state that changes after the session has been created that we need to worry about, e.g. state that can be changed through setters. The page load strategy is immutable for the duration of the session. Maybe the safer option is to create a synchronous listener-to-driver interface to query all config options in driver.js so that state is only kept in one place, and not pass the capabilities to the listener at all when it registers.
Updated•7 years ago
|
Priority: -- → P3
Updated•6 years ago
|
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → DUPLICATE
Updated•1 year ago
|
Product: Testing → Remote Protocol
You need to log in
before you can comment on or make changes to this bug.
Description
•