Commit Graph

20 Commits

Author SHA1 Message Date
Joey Parrish ec4bc1ddeb test: Fix Chromecast testing in lab (#6643)
These changes are necessary for compatibility with Chromecast WebDriver Server v2.

 - Fix a bug in Karma's flat environment support (joeyparrish/karma@9875e98)
 - Add a test boot file to load CAF on Chromecast devices; required by Chromecast WebDriver Server v2's redirect mode (flat environment at that level)
 - Also load this cast-boot file in support.html
 - Rename/reorganize Cast-related externs, which were messy even before the addition of CAF
 - Remove proxy-cast-platform.js; no longer needed as we move to flatten the test environment
 - Ignore error events with "null" error; these appear on Linux Chromecasts, only since including CAF
 - Ignore error events that are actually strings; these appear on Linux Chromecasts, only since including CAF
 - Disable Fuchsia in the lab until autoplay issues can be resolved
2024-05-20 15:14:49 -07:00
Joey Parrish 5da5de2800 feat: Expose the maximum hardware resolution through probeSupport() (#6569)
This makes it easier to debug hardware resolution issues through the
support page, which can now show hardware resolution. To show the
support page on Chromecast devices, use chromecast-webdriver-cli.
2024-05-09 10:43:37 -07:00
Álvaro Velad Galván 7df3321272 feat: Add TS transmuxer for muxed content (#5571) 2023-09-07 18:20:03 +02:00
Álvaro Velad Galván d9fa4ebdec fix: Add mux.js to support.html (#4923) 2023-01-23 20:25:26 +01:00
Joey Parrish 7e6a0f38ff fix: Correct license headers in misc. files
This corrects/normalizes license headers in misc. files, such as
config files, docs, build tools, tests, and externs.  This does not
affect the compiled output, and is only done for consistency.

Issue #2638

Change-Id: I9d8da2de55243b08d7df2b743aac73c6f15e858a
2020-06-09 16:13:56 -07:00
Joey Parrish 7a3b352023 An external Promise polyfill is no longer required
At some point, a compiler upgrade introduced a built-in polyfill for
Promise.  A third-party polyfill for Promises on IE11 is no longer
required.

Change-Id: Ie5a649232d949b0bba0c6c68ea54ceed6fb30891
2018-09-13 22:12:04 +00:00
Joey Parrish c6f7e4cf0a Fix demo background, margins on TV
When testing TV devices by loading the demo or support page directly,
some rendering issues were found.  This fixes rendering of the support
testing page and the demo (in noinput mode) for TV devices such as
Chromecast.

Change-Id: I8b659d9a67e4829a48b2ec912685f131025c1575
2018-03-27 17:24:51 +00:00
Joey Parrish 82357486a6 Replace buggy Promise polyfill
A bug in our Promise polyfill caused issues with the recently-added
AbortableOperation class on IE11.  Since external polyfills for this
are smaller, it is easier to remove ours in favor of a third-party
polyfill.  Applications that wish to support IE11 must now load this
additional polyfill.

We are using the "es6-promise-polyfill" module from npm, but any
compliant polyfill should suffice.

One feature our own polyfill offered was the ability to flush all
Promises, which allowed us to write synchronous unit tests that
simulated async processes.  To get this ability back, we are now
using the "promise-mock" module in our tests.

Getting "promise-mock" to load correctly involved switching from
"requirejs" to "cajon", which builds on requirejs and supports
AMD modules more directly.

Closes #1260

Change-Id: I5de48e88a910736ae5c1897a7a509bc5641acb70
2018-01-30 23:10:04 +00:00
Joey Parrish bdb58294b0 Fix accessibility issues
Found by WAVE Chrome extension:
 - Add lang to html elements
 - Do not use label for non-inputs
 - Add invisible labels on video inputs, just for screen readers

Closes #552

Change-Id: I68f96fd92d33b2927da5ec52fd6c22527635c795
2016-10-17 16:47:12 -07:00
Jacob Trimble 5102f54120 Make Player.support synchronous and add support plugin system.
Now there is a new synchronous method Player.isBrowserSupported.  This
will detect basic support and return a boolean.  The support() method
has been renamed to probeSupport() and should only be used for
diagnostics.

Also added a plugin system to Player support testing.  Now a plugin
(e.g. offline) can add extra info to the output of probeSupport().

Closes #388
Closes #389

Change-Id: I313a41d9f123871272f1395aeb99c980df1f4bae
2016-06-02 21:57:38 +00:00
Jacob Trimble e105db3be9 Improve JSON stringify in support.html.
This improves the code in support.html that stringifies a JavaScript
object.  Before, it assumed a specific layout. This adds a more
general stringify method that will support nested objects correctly.

Change-Id: Ie59747d0ce634ef028c4819b92fc2fd61552f724
2016-05-23 17:00:28 +00:00
Joey Parrish 833113e535 Add charset meta tag to support test page
Change-Id: If233d667caa92477540ca83c918990c531fd1e41
2016-03-21 22:16:29 +00:00
Jacob Trimble 19973d63f4 Changed copyright headers from 2015 to 2016.
Change-Id: I429ff27e4794c03b7ea392e38415075077f9bfb1
2016-03-15 16:32:13 -07:00
Joey Parrish 185e8f6706 Fix HTML5 spec-compliance for support.html
This page was failing HTML5 validation and producing warnings on IE11
due to the script tag being outside of the head tag.

Change-Id: I22a951ed0923561c4f25a4e8df501437bb685220
2016-03-02 17:57:58 +00:00
Joey Parrish 3339ab6ede Add library version to support test page
Change-Id: I99809bdc48b92e522b6b65b3ee6309d4d1285183
2016-02-26 03:37:51 +00:00
Jacob Trimble 2caded0e31 Update support page to new output location.
Change-Id: I633dba69474c7b61a804a355140965ffcf26e4f0
2016-02-18 14:54:16 -08:00
Joey Parrish c9235f859c Add support-testing framework.
Support testing is hierarchical.  Player.support returns an object
mapping out the support present in various parts of the system.

This creates a shell for Player and DrmEngine, and introduces support
tests for MediaSourceEngine, ManifestParser, and DrmEngine.

This also adjusts the way support checks are done for text types, to
allow for expansion into MP4-embedded text types and other segmented
subtitle types.

Text changes related to #150 and #146

Change-Id: I707f01ba52cba6262ee89bee2c1f28d24aca4655
2015-12-10 20:00:22 +00:00
Joey Parrish 03df140fb8 https://goo.gl/RvMyq4 2015-11-25 12:14:04 -08:00
Joey Parrish 34c4a7b4cd Refactor and update support test page.
Change-Id: I8230577229e61aa7d54ba4dd799451ab2a6b70dc
2015-04-21 17:49:37 +00:00
Joey Parrish b3d035be9f Shaka Player release v1.0 2014-12-19 14:26:19 -08:00