-
Notifications
You must be signed in to change notification settings - Fork 46
Safari Tech Preview test results are different on local machine #619
Comments
@jugglinmike do you have logs available for these runs, to see if they provide any clues? |
Note that I actually get timeouts when running from command line (see below)
|
It turns out that if I attach function loadVideo(activeDocument, sourceUrl) {
return new Promise((resolve, reject) => {
const document = activeDocument || window.document;
const video = document.createElement('video');
+ document.body.appendChild('video'); // Needed only for Safari Automation mode.
video.src = sourceUrl || getVideoURI('/media/movie_5');
video.onloadedmetadata = () => { resolve(video); };
video.onerror = error => { reject(error); };
});
} |
@burg any idea what's up here with Safari behaving differently under automation? |
I'm not quite sure what "Automation mode" means. Does this run via WebDriver, or not? |
Yes @burg |
What do I run to test this locally from the wpt repository with a custom driver path? |
Two avenues come to mind:
|
|
|
Great, I'm tracking this internally as rdar://problem/45384220. I'll update this issue when I figure it out. |
@burg, here's a 28s screen recording: https://photos.app.goo.gl/qsxSgHijiWEfVW649 |
That's cool :) Note that if you ever want to run a single test and don't want the window to stay open you can use |
@burg Let me know if I can help. |
@beaufortfrancois once web-platform-tests/wpt#13769 has landed, you should be able to submit a PR that tweaks .azure-pipelines.yml a bit to run the test using Safari Technology Preview, for a second data point. If it also is different from a local machine, then at least it's easy (ish) to iterate on the Azure Pipelines setup to work out why it's different. |
@burg Any progress on this issue? |
I executed @burg Were you able to figure this one out? @jernoble may help as well to diagnose.
|
@beaufortfrancois if you're getting The problem, however, seems to be related to picture-in-picture-helpers.js. Can you just attach the video to the document if that fixes the problem? You could file a WebKit bug and link to it in a comment. |
Sorry, there were two |
My goal with these tests is to make sure a video doesn't have to be attached to the DOM to be able to enter Picture-in-Picture, so it should fail (because it is not supported yet) but not time out. To be clear, this issue happens only in SafariDriver, not Safari browser. |
@beaufortfrancois is there anything in https://github.com/WebKit/webkit/blob/master/Source/WebCore/html/HTMLMediaElement.cpp that provides hints? Without reading code, my guess would be that the window isn't considered focused or visible when run under automation, and that there's some code that waits for it to be focused/visible. |
It may be |
I haven't had time to look into this, but it's still being tracked. |
@burg Is there any chance you can prioritize this or we can help? |
I'm seeing some timeouts on Picture-in-Picture idl harness tests that I'm not seeing locally with Safari Tech Preview Release 67 (on macOS 10.13.6).
Note that it is the same with Safari stable locally.
Local machine
web-platform-tests dashboard
The text was updated successfully, but these errors were encountered: