-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove html/semantics/forms/the-input-element/range-restore-oninput-onchange-event.html #99
Comments
Can this test be written to be compatible with bfcache instead? |
Or we could use a cross-browser way to inhibit bfcache. |
|
Here's the test: A new window is |
@mfreed7 @josepharhar do either of you have experience with this test, can you give input? |
I thought adding an unload handler would be enough to prevent bfcache, but I'm not sure I'm correct. @smaug---- your input here would be very useful. |
Not true in WebKit. |
Listening of the "pageshow" event would indeed detect the navigation even if coming from the bfcache. However, I don't think this is the way to fix this test since it validates form restoration on history traversal and expected certain form control events. If the page came out of the bfcache then there would be no form restoration or form control events since the form controls would come out of the cache as-is with their last values already in there. I think the way to fix this test is to somehow opt out of bfcache. The most reliable way I know is |
Alright, can someone experiment with HTTPS + |
I guess I can experiment since WebKit is the one bf caching. |
…t-onchange-event.html doesn't trigger bfcache This test was triggering bfcache in WebKit and thus not getting form restoration events on back navigation. To address this, use `HTTPS + Cache-Control: no-store` to opt out of bfcache. See discussion at web-platform-tests/interop#99.
…t-onchange-event.html doesn't trigger bfcache (#35341) This test was triggering bfcache in WebKit and thus not getting form restoration events on back navigation. To address this, use `HTTPS + Cache-Control: no-store` to opt out of bfcache. See discussion at web-platform-tests/interop#99.
I had to rename the test to make it https. Does anything need to be done to update the test name in Interop? |
Sounds like there isn't anything else to do here, closing. Thanks Chris! |
…-element/range-restore-oninpu…, a=testonly Automatic update from web-platform-tests Make sure html/semantics/forms/the-input-element/range-restore-oninput-onchange-event.html doesn't trigger bfcache (#35341) This test was triggering bfcache in WebKit and thus not getting form restoration events on back navigation. To address this, use `HTTPS + Cache-Control: no-store` to opt out of bfcache. See discussion at web-platform-tests/interop#99. -- wpt-commits: 71e460e053fd2c8ba425c2fe11e73cf6f8e4eb40 wpt-pr: 35341
Since this change, the test is failing on Firefox, see bug 1783245 and this commit. Also, if this test is aimed at restoring persistent state, we should assert that bfcache is not active (e.g. by changing the value of a span) and make this test optional. @cdumez do you know of other ways to disable bfcache in Safari? I'm still investigating why |
Reopen this for reviewing and addressing vinhill's comment. Thanks! |
As vinhill noted, this test was working correctly in Firefox: the page didn't go into the BFCache for us because it has an opener, and we restored form values correctly. Adding This area isn't really specified well in HTML, and we are considering aligning our form restoration behaviour in that case with other browsers at some point. But it still seems wrong to change a test to work in WebKit and simultaneously break it in Firefox because of non-speced behaviours that are unrelated to the behaviour that the test is checking. I don't think there's currently a good way to disable BFCache described in the specs. @smaug---- pointed out to me that the HTML spec does mention active WebSocket objects in https://html.spec.whatwg.org/#dom-pagetransitionevent-persisted-dev, but I'm not sure whether that's supported cross-browser too. |
This is the test on wpt.fyi: |
…nchange-event.html Fixes web-platform-tests/interop#99
…nchange-event.html Fixes web-platform-tests/interop#99
** Test List **
html/semantics/forms/the-input-element/range-restore-oninput-onchange-event.html
** Rationale **
It does pass on WebKit infrastructure: https://searchfox.org/wubkat/source/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/range-restore-oninput-onchange-event-expected.txt
It does not pass on wpt.fyi however, quoting @cdumez, because:
cc @jensimmons
The text was updated successfully, but these errors were encountered: