This only passes in Firefox because we happen to return to the event loop and run the event that starts the load while opening the new window. In Fennec, this doesn't occur, and we don't start the load until after the video has been appended to the new window. This causes the load to fail, because it's a relative URL from about:blank.
Created attachment 554230 [details] [diff] [review] Ensure that the video load begins before adding the video to a new document.
Created attachment 554231 [details] [diff] [review] Ensure that the video load begins before adding the video to a new document.
The landing of this seems to have caused an issue when I run the content/media mochitests. The test_delay_load.html test now leaves a popup window open at the end of the tests. Reverting the patch in this bug fixes it for me.
The problem seems to be that onloadstart is never called for the element that gets put in the other window. At least the event handler never fires.
OK, so what happens is that v.onloadstart does window.open, which seems to spin the event loop so that the load event fires in there. Which means loaded() actually runs before we add the window to 'testWindows', so the window isn't closed. For the test to work we really need to avoid our events firing during window.open. I'll try doing the window.open early, outside the event handler.
Created attachment 576056 [details] [diff] [review] fix test