Title: [233761] trunk
Revision
233761
Author
[email protected]
Date
2018-07-11 22:27:17 -0700 (Wed, 11 Jul 2018)

Log Message

MediaDevices should derive from EventTarget in its IDL
https://bugs.webkit.org/show_bug.cgi?id=187575

Reviewed by Chris Dumez.

Source/WebCore:

Test: fast/mediastream/MediaDevices-addEventListener.html

* Modules/mediastream/MediaDevices.idl:

LayoutTests:

* fast/mediastream/MediaDevices-addEventListener-expected.txt: Added.
* fast/mediastream/MediaDevices-addEventListener.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (233760 => 233761)


--- trunk/LayoutTests/ChangeLog	2018-07-12 05:18:20 UTC (rev 233760)
+++ trunk/LayoutTests/ChangeLog	2018-07-12 05:27:17 UTC (rev 233761)
@@ -1,3 +1,13 @@
+2018-07-11  Youenn Fablet  <[email protected]>
+
+        MediaDevices should derive from EventTarget in its IDL
+        https://bugs.webkit.org/show_bug.cgi?id=187575
+
+        Reviewed by Chris Dumez.
+
+        * fast/mediastream/MediaDevices-addEventListener-expected.txt: Added.
+        * fast/mediastream/MediaDevices-addEventListener.html: Added.
+
 2018-07-11  Ryosuke Niwa  <[email protected]>
 
         Layout Test editing/selection/navigation-clears-editor-state.html is flaky

Added: trunk/LayoutTests/fast/mediastream/MediaDevices-addEventListener-expected.txt (0 => 233761)


--- trunk/LayoutTests/fast/mediastream/MediaDevices-addEventListener-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/mediastream/MediaDevices-addEventListener-expected.txt	2018-07-12 05:27:17 UTC (rev 233761)
@@ -0,0 +1,4 @@
+
+PASS Testing MediaDevices addEventListener/removeEventListener 
+PASS Capture 'devicechange' event with addEventListener 
+

Added: trunk/LayoutTests/fast/mediastream/MediaDevices-addEventListener.html (0 => 233761)


--- trunk/LayoutTests/fast/mediastream/MediaDevices-addEventListener.html	                        (rev 0)
+++ trunk/LayoutTests/fast/mediastream/MediaDevices-addEventListener.html	2018-07-12 05:27:17 UTC (rev 233761)
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title>Testing MediaDevices addEventListener/removeEventListener</title>
+    <script src=""
+    <script src=""
+    <script>
+    test(() => {
+        assert_true(!!navigator.mediaDevices.addEventListener, "addEventListener");
+        assert_true(!!navigator.mediaDevices.removeEventListener, "removeEventListener");
+    });
+
+    promise_test(async (test) => {
+        if (!window.testRunner)
+            return Promise.reject("test requires internal API");
+
+        test.add_cleanup(() => { testRunner.resetMockMediaDevices(); });
+
+        testRunner.setUserMediaPermission(true);
+
+        await navigator.mediaDevices.getUserMedia({ audio:true, video:true });
+
+        let devices = await navigator.mediaDevices.enumerateDevices();
+
+        assert_true(!!devices.length, "check there are some devices");
+
+        testRunner.clearMockMediaDevices();
+
+        devices = await navigator.mediaDevices.enumerateDevices();
+        assert_false(!!devices.length, "check there are no more devices");
+
+        await new Promise((resolve, reject) => {
+            navigator.mediaDevices.addEventListener('devicechange', resolve);
+            setTimeout(() => {
+                console.log("event 1 taking a long time");
+                resolve();
+            }, 5000);
+            testRunner.addMockCameraDevice("id1", "my camera");
+        });
+    }, "Capture 'devicechange' event with addEventListener");
+    </script>
+</head>
+<body>
+</body>
+</html>

Modified: trunk/Source/WebCore/ChangeLog (233760 => 233761)


--- trunk/Source/WebCore/ChangeLog	2018-07-12 05:18:20 UTC (rev 233760)
+++ trunk/Source/WebCore/ChangeLog	2018-07-12 05:27:17 UTC (rev 233761)
@@ -1,3 +1,14 @@
+2018-07-11  Youenn Fablet  <[email protected]>
+
+        MediaDevices should derive from EventTarget in its IDL
+        https://bugs.webkit.org/show_bug.cgi?id=187575
+
+        Reviewed by Chris Dumez.
+
+        Test: fast/mediastream/MediaDevices-addEventListener.html
+
+        * Modules/mediastream/MediaDevices.idl:
+
 2018-07-11  Jon Lee  <[email protected]>
 
         Update iOS fullscreen alert text

Modified: trunk/Source/WebCore/Modules/mediastream/MediaDevices.idl (233760 => 233761)


--- trunk/Source/WebCore/Modules/mediastream/MediaDevices.idl	2018-07-12 05:18:20 UTC (rev 233760)
+++ trunk/Source/WebCore/Modules/mediastream/MediaDevices.idl	2018-07-12 05:27:17 UTC (rev 233761)
@@ -33,7 +33,7 @@
     ActiveDOMObject,
     Conditional=MEDIA_STREAM,
     NoInterfaceObject,
-] interface MediaDevices {
+] interface MediaDevices : EventTarget {
     attribute EventHandler ondevicechange;
     Promise<sequence<MediaDeviceInfo>> enumerateDevices();
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to