Add new test cases for alignment `start` and `end` for both LTR and RTL text.
Differential Revision: https://phabricator.services.mozilla.com/D35271
--HG--
extra : moz-landing-system : lando
In order to simulate the specific running order, we have to add a test event 'mozStartedLoadingTextTrack', which would be controlled under a pref.
This test is used to ensure that we won't get `error` event when we change track's mode during loading.
Differential Revision: https://phabricator.services.mozilla.com/D36410
--HG--
extra : moz-landing-system : lando
Since JSWindowActors don't have direct access to synchronous messaging,
ChromeScript callers are going to need to migrate to asynchronous messaging
and queries instead.
Since there's no comparable API to sendQuery for frame message managers, this
patch adds a stub that uses synchronous messaging, but makes the API appear
asynchronous, and migrates callers to use it instead of direct synchronous
messaging. This will be replaced with a true synchronous API in the actor
migration.
Fortunately, most of the time, this actually leads to simpler code. The
`sendQuery` API doesn't have the odd return value semantics of
`sendSyncMessage`, and can usually just be used as a drop-in replacement. Many
of the `sendSyncMessage` callers don't actually use the result, and can just
be changed to `sendAsyncMessage`. And many of the existing async messaging
users can be changed to just use `sendQuery` rather than sending messages and
adding response listeners.
However, the APZ code is an exception. It relies on intricate properties of
the event loop, and doesn't have an easy way to slot in promise handlers, so I
migrated it to using sync messaging via process message managers instead.
Differential Revision: https://phabricator.services.mozilla.com/D35055
--HG--
extra : rebase_source : d5707e87f293a831a5cf2e0b0a7e977090267f78
extra : source : 75ebd6fce136ab3bd0e591c2b8b2d06d3b5bf923
From the previous patch, if ogg is disabled we'll fallback on video/webm.
So some tests relying on errors need it disabled too, in order to pass.
Differential Revision: https://phabricator.services.mozilla.com/D35172
--HG--
extra : moz-landing-system : lando
This test is used to ensure that we shouldn't load CORS resource if server doesn't respond with correct CORS header.
In this situation, loading should be expected to fail.
Differential Revision: https://phabricator.services.mozilla.com/D36513
--HG--
extra : moz-landing-system : lando
Changes:
- rebalance chunk
- turn off three tests that are nearly permafail
Differential Revision: https://phabricator.services.mozilla.com/D34932
--HG--
extra : moz-landing-system : lando
isSlowPlatform() is always false because we no longer support Android 2.3 or B2G.
Also remove unused functions isWindows32() and isAndroid(). They were added in bug 1485875, but the callers were later removed in Windows bug 1475564 and Android bug 1368843.
Differential Revision: https://phabricator.services.mozilla.com/D33424
--HG--
extra : rebase_source : d5eed7e4e4fa3e30e4ee4dc2d5150fbc93399362
extra : intermediate-source : ccf9c92231f1b5ef81f1bbbf5d416b451823a410
extra : source : afb7719c98e6c75b63a6b65726ed572fec5fde39
I hope to remove the CPU architecture ("x64") from the UA string in bug 1556223. Tests that need to check for Win32 vs Win64 will need to check Services.appinfo.is64Bit instead of sniffing the UA string.
AV1-in-MP4 support was disabled on Win32 in bug 1417050 and re-enabled in bug 1475564. This Win32 check should have been removed at that time to re-enable this AV1-in-MP4 test on Win32. However, we can't re-enable Win32 support at this time because the RDM fails with E_OUTOFMEMORY on 32-bit Win7.
Differential Revision: https://phabricator.services.mozilla.com/D33423
--HG--
extra : rebase_source : 14467e9369debd5fd39015d7c8d74ebb962ad876
extra : intermediate-source : e74f96d597e8e1f77bd081c2dc87fa24f76b1da7
extra : source : ca803507e45157c32bef4a519ad94a9a068b6a3a
isSlowPlatform() is always false because we no longer support Android 2.3 or B2G.
Also remove unused functions isWindows32() and isAndroid(). They were added in bug 1485875, but the callers were later removed in Windows bug 1475564 and Android bug 1368843.
Depends on D33423
Differential Revision: https://phabricator.services.mozilla.com/D33424
--HG--
extra : moz-landing-system : lando
AV1-in-MP4 support was disabled on Win32 in bug 1417050 and re-enabled in bug 1475564. This Win32 check should have been removed at that time to re-enable this AV1-in-MP4 test on Win32.
Differential Revision: https://phabricator.services.mozilla.com/D33423
--HG--
extra : moz-landing-system : lando
Add another test case for the mp4 key rotation (pssh in fragments) test. In this
case, the test file has a clear (unencrypted) lead. This test seeks to ensure we
don't regress surfacing of init info even if we encounter it for fragments that
start with unencrypted samples.
Add a further check to the key rotation test to ensure that the initDataType is
being surfaced correctly on the encrypted event.
Media files created with shaka packager via:
```
packager-win.exe
in=bipbop.mp4,stream=audio,out=bipbop-clearkey-keyrotation-clear-lead-audio.mp4
in=bipbop.mp4,stream=video,out=bipbop-clearkey-keyrotation-clear-lead-video.mp4
--enable_raw_key_encryption --keys
label=:key_id=00112233445566778899AABBCCDDEEFF:key=00112233445566778899AABBCCDDEEFF
--crypto_period_duration 5 --fragment_duration 5 --clear_lead 3
```
Note that the way shaka packager handles key rotation in this case is just to
left shift the key id and the key. In this case, where crypto_period_duration ==
fragment_duration, a left shift of 1 will take place each time the keys rotate.
This happens once in the test file leaving us with 2 key ids + keys.
Depends on D32750
Differential Revision: https://phabricator.services.mozilla.com/D32751
--HG--
extra : moz-landing-system : lando
test_eme_pssh_in_moof tests if our key rotation works correctly. It currently
does so by using a single video with an audio and video track. This patch
refactors the test so that it does the same thing (all going well), but in a
more extensible way.
The changes in this patch seek to lean more heavily on test harness
functionality in manifest.js and eme.js where possible. This cuts down on some
boilerplate, but means we have to make some concessions in a more verbose
expression of our test media list so the eme.js functions work with it.
Differential Revision: https://phabricator.services.mozilla.com/D32750
--HG--
extra : moz-landing-system : lando
This patch structurizes the media debug information via webidl dictionaries
that are returned by HTMLMediaElement::GetMozRequestDebugInfo() and
MediaSource::GetMozDebugReaderData().
Differential Revision: https://phabricator.services.mozilla.com/D27893
--HG--
extra : moz-landing-system : lando
This async/await-ifies the test to put checks in logical order.
It also, as a drive-by, adds `v.token = token` since this is a cue to the test
framework in manifest.js to mozDumpDebugInfo() on the right element after
timeout of a token.
Differential Revision: https://phabricator.services.mozilla.com/D32114
--HG--
extra : moz-landing-system : lando
Refactor those tests' structure in order to make them more readable, and add the comment to show what the test purpose is for each test.
Differential Revision: https://phabricator.services.mozilla.com/D31914
--HG--
extra : moz-landing-system : lando
This patch do two things in order to trigger loading for track element and wait for correct event to check track's and cues' status after loading finished.
(1) listen track element's load event
There are some tests listening video's loadedmetadata, but it's wrong. The loading process of media element and track element are completely non-related.
If you would like to check track element's status, you should wait for track element's load event.
(2) enable track explictly
If the text track which has default attribute is added to the media element before the media element starts running automatic track selection [1], then it would be enable by the media element.
Otherwise, you have to enable track explicitly by changing its track mode.
[1] https://html.spec.whatwg.org/multipage/media.html#sourcing-out-of-band-text-tracks:text-track-7
Differential Revision: https://phabricator.services.mozilla.com/D31913
--HG--
extra : moz-landing-system : lando
Create test elements in HTML beforehand, which can remove unnecessary JS code and make test cleaner.
Differential Revision: https://phabricator.services.mozilla.com/D31911
--HG--
extra : moz-landing-system : lando
Adding tests to ensure that when cues with overlapping times, the one with earlier end timestamp should disappear when the media time reaches its end time. In this test, we have two cues with overlapping time, when the video starts, both cues should be displayed. When the time passes 1 seconds, the first cue should disappear and the second cues should be still displayed.
Differential Revision: https://phabricator.services.mozilla.com/D31172
--HG--
extra : moz-landing-system : lando
Refactor those tests' structure in order to make them more readable, and add the comment to show what the test purpose is for each test.
Differential Revision: https://phabricator.services.mozilla.com/D31914
--HG--
extra : moz-landing-system : lando
This patch do two things in order to trigger loading for track element and wait for correct event to check track's and cues' status after loading finished.
(1) listen track element's load event
There are some tests listening video's loadedmetadata, but it's wrong. The loading process of media element and track element are completely non-related.
If you would like to check track element's status, you should wait for track element's load event.
(2) enable track explictly
If the text track which has default attribute is added to the media element before the media element starts running automatic track selection [1], then it would be enable by the media element.
Otherwise, you have to enable track explicitly by changing its track mode.
[1] https://html.spec.whatwg.org/multipage/media.html#sourcing-out-of-band-text-tracks:text-track-7
Differential Revision: https://phabricator.services.mozilla.com/D31913
--HG--
extra : moz-landing-system : lando
Create test elements in HTML beforehand, which can remove unnecessary JS code and make test cleaner.
Differential Revision: https://phabricator.services.mozilla.com/D31911
--HG--
extra : moz-landing-system : lando
Adding tests to ensure that when cues with overlapping times, the one with earlier end timestamp should disappear when the media time reaches its end time. In this test, we have two cues with overlapping time, when the video starts, both cues should be displayed. When the time passes 1 seconds, the first cue should disappear and the second cues should be still displayed.
Differential Revision: https://phabricator.services.mozilla.com/D31172
--HG--
extra : moz-landing-system : lando