Title: [187612] trunk/LayoutTests
- Revision
- 187612
- Author
- mra...@apple.com
- Date
- 2015-07-30 15:13:46 -0700 (Thu, 30 Jul 2015)
Log Message
Media Session: test Play/Pause media control events delivered to non-Content media sessions https://bugs.webkit.org/show_bug.cgi?id=147414
Reviewed by Eric Carlson.
* media/session/play-pause-media-events-in-non-content-sessions-expected.txt: Added.
* media/session/play-pause-media-events-in-non-content-sessions.html: Added.
* platform/mac/TestExpectations: Media Session support is disabled by default.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (187611 => 187612)
--- trunk/LayoutTests/ChangeLog 2015-07-30 21:58:23 UTC (rev 187611)
+++ trunk/LayoutTests/ChangeLog 2015-07-30 22:13:46 UTC (rev 187612)
@@ -1,5 +1,16 @@
2015-07-29 Matt Rajca <mra...@apple.com>
+ Media Session: test Play/Pause media control events delivered to non-Content media sessions
+ https://bugs.webkit.org/show_bug.cgi?id=147414
+
+ Reviewed by Eric Carlson.
+
+ * media/session/play-pause-media-events-in-non-content-sessions-expected.txt: Added.
+ * media/session/play-pause-media-events-in-non-content-sessions.html: Added.
+ * platform/mac/TestExpectations: Media Session support is disabled by default.
+
+2015-07-29 Matt Rajca <mra...@apple.com>
+
Media Session: test Play/Pause media control events delivered to Content media sessions
https://bugs.webkit.org/show_bug.cgi?id=147413
Added: trunk/LayoutTests/media/session/play-pause-media-events-in-non-content-sessions-expected.txt (0 => 187612)
--- trunk/LayoutTests/media/session/play-pause-media-events-in-non-content-sessions-expected.txt (rev 0)
+++ trunk/LayoutTests/media/session/play-pause-media-events-in-non-content-sessions-expected.txt 2015-07-30 22:13:46 UTC (rev 187612)
@@ -0,0 +1,41 @@
+'Transient', 'Transient Solo', and 'Ambient' sessions should not respond to Play/Pause media control events.
+
+
+---
+Testing "transient" session kind
+---
+EVENT(canplaythrough)
+EVENT(playing)
+Media began playing.
+EXPECTED (video.paused == 'false') OK
+EXPECTED (internals.mediaSessionCurrentState(session) == 'active') OK
+Non-Content Media Sessions should not respond to Play/Pause events.
+Sending Play/Pause media event.
+RUN(internals.sendMediaControlEvent("play-pause"))
+EXPECTED (video.paused == 'false') OK
+---
+Testing "transient-solo" session kind
+---
+EVENT(canplaythrough)
+EVENT(playing)
+Media began playing.
+EXPECTED (video.paused == 'false') OK
+EXPECTED (internals.mediaSessionCurrentState(session) == 'active') OK
+Non-Content Media Sessions should not respond to Play/Pause events.
+Sending Play/Pause media event.
+RUN(internals.sendMediaControlEvent("play-pause"))
+EXPECTED (video.paused == 'false') OK
+---
+Testing "ambient" session kind
+---
+EVENT(canplaythrough)
+EVENT(playing)
+Media began playing.
+EXPECTED (video.paused == 'false') OK
+EXPECTED (internals.mediaSessionCurrentState(session) == 'active') OK
+Non-Content Media Sessions should not respond to Play/Pause events.
+Sending Play/Pause media event.
+RUN(internals.sendMediaControlEvent("play-pause"))
+EXPECTED (video.paused == 'false') OK
+END OF TEST
+
Added: trunk/LayoutTests/media/session/play-pause-media-events-in-non-content-sessions.html (0 => 187612)
--- trunk/LayoutTests/media/session/play-pause-media-events-in-non-content-sessions.html (rev 0)
+++ trunk/LayoutTests/media/session/play-pause-media-events-in-non-content-sessions.html 2015-07-30 22:13:46 UTC (rev 187612)
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <script src=""
+ <script src=""
+ <script type="text/_javascript_">
+ var session;
+
+ function runAllTests()
+ {
+ findMediaElement();
+ waitForEvent('canplaythrough', beginPlaying);
+ runTest("transient");
+ }
+
+ function runTest(sessionKind)
+ {
+ consoleWrite('---');
+ consoleWrite('Testing "' + sessionKind + '" session kind');
+ consoleWrite('---');
+
+ session = new MediaSession(sessionKind);
+
+ video.src = "" "../content/counting");
+ video.session = session;
+ waitForEvent('playing', beganPlaying, false, true, video);
+ }
+
+ function beginPlaying(event)
+ {
+ video.play();
+ }
+
+ function beganPlaying(event)
+ {
+ consoleWrite("Media began playing.");
+ testExpected('video.paused', false);
+
+ if (window.internals) {
+ testExpected('internals.mediaSessionCurrentState(session)', "active");
+
+ consoleWrite("Non-Content Media Sessions should not respond to Play/Pause events.");
+ consoleWrite("Sending Play/Pause media event.");
+ run('internals.sendMediaControlEvent("play-pause")');
+ testExpected('video.paused', false);
+ }
+
+ if (video.session.kind == "transient")
+ runTest("transient-solo");
+ else if (video.session.kind == "transient-solo")
+ runTest("ambient");
+ else if (video.session.kind == "ambient")
+ endTest();
+ else
+ failTest("Unexpected session kind");
+ }
+ </script>
+</head>
+<body _onload_="runAllTests()">
+ <p>'Transient', 'Transient Solo', and 'Ambient' sessions should not respond to Play/Pause media control events.</p>
+ <video id="video" />
+</body>
+</html>
Modified: trunk/LayoutTests/platform/mac/TestExpectations (187611 => 187612)
--- trunk/LayoutTests/platform/mac/TestExpectations 2015-07-30 21:58:23 UTC (rev 187611)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2015-07-30 22:13:46 UTC (rev 187612)
@@ -998,6 +998,7 @@
media/session/controls-existence.html
media/session/default-session.html
media/session/play-pause-media-events-in-content-sessions.html
+media/session/play-pause-media-events-in-non-content-sessions.html
media/session/track-media-events-in-content-sessions.html
media/session/transient-interruptions.html
media/session/transient-solo-interruptions.html
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes