Title: [218773] trunk
Revision
218773
Author
[email protected]
Date
2017-06-23 16:16:31 -0700 (Fri, 23 Jun 2017)

Log Message

Set getUserMedia permission to true by default on WTR
https://bugs.webkit.org/show_bug.cgi?id=173610

Patch by Youenn Fablet <[email protected]> on 2017-06-23
Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

* web-platform-tests/webrtc/simplecall-expected.txt:

Tools:

Adding a way to reset the getUserMedia permission to pending.

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::setUserMediaPermissionAsUnset):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setUserMediaPermissionAsUnset):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::setUserMediaPermissionAsUnset):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):

LayoutTests:

* fast/mediastream/delayed-permission-allowed.html:
* fast/mediastream/delayed-permission-denied.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (218772 => 218773)


--- trunk/LayoutTests/ChangeLog	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/LayoutTests/ChangeLog	2017-06-23 23:16:31 UTC (rev 218773)
@@ -1,5 +1,15 @@
 2017-06-23  Youenn Fablet  <[email protected]>
 
+        Set getUserMedia permission to true by default on WTR
+        https://bugs.webkit.org/show_bug.cgi?id=173610
+
+        Reviewed by Alex Christensen.
+
+        * fast/mediastream/delayed-permission-allowed.html:
+        * fast/mediastream/delayed-permission-denied.html:
+
+2017-06-23  Youenn Fablet  <[email protected]>
+
         webrtc/routines.js should call createAnswer once setRemoteDescription promise is resolved
         https://bugs.webkit.org/show_bug.cgi?id=173785
 

Modified: trunk/LayoutTests/fast/mediastream/delayed-permission-allowed.html (218772 => 218773)


--- trunk/LayoutTests/fast/mediastream/delayed-permission-allowed.html	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/LayoutTests/fast/mediastream/delayed-permission-allowed.html	2017-06-23 23:16:31 UTC (rev 218773)
@@ -14,6 +14,9 @@
         testRunner.setUserMediaPermission(true);
 }
 
+if (window.testRunner)
+    testRunner.resetUserMediaPermission();
+
 var options = {audio: true, video: true};
 navigator.mediaDevices.getUserMedia(options)
     .then(stream => {

Modified: trunk/LayoutTests/fast/mediastream/delayed-permission-denied.html (218772 => 218773)


--- trunk/LayoutTests/fast/mediastream/delayed-permission-denied.html	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/LayoutTests/fast/mediastream/delayed-permission-denied.html	2017-06-23 23:16:31 UTC (rev 218773)
@@ -14,6 +14,9 @@
         testRunner.setUserMediaPermission(false);
 }
 
+if (window.testRunner)
+    testRunner.resetUserMediaPermission();
+
 var error;
 var options = {audio: true, video: true};
 navigator.mediaDevices.getUserMedia(options)

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (218772 => 218773)


--- trunk/LayoutTests/imported/w3c/ChangeLog	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2017-06-23 23:16:31 UTC (rev 218773)
@@ -1,3 +1,12 @@
+2017-06-23  Youenn Fablet  <[email protected]>
+
+        Set getUserMedia permission to true by default on WTR
+        https://bugs.webkit.org/show_bug.cgi?id=173610
+
+        Reviewed by Alex Christensen.
+
+        * web-platform-tests/webrtc/simplecall-expected.txt:
+
 2017-06-22  Romain Bellessort  <[email protected]>
 
         [Readable Streams API] Implement ReadableStreamBYOBReader read()

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/webrtc/simplecall-expected.txt (218772 => 218773)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/webrtc/simplecall-expected.txt	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webrtc/simplecall-expected.txt	2017-06-23 23:16:31 UTC (rev 218773)
@@ -1,4 +1,4 @@
 The feature(s) tested here are known to have been made available via vendor prefixes; you can run this test with vendor prefixes enabled.
 
-TIMEOUT Can set up a basic WebRTC call. Test timed out
-  
+PASS Can set up a basic WebRTC call. 
+ 

Modified: trunk/Tools/ChangeLog (218772 => 218773)


--- trunk/Tools/ChangeLog	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/ChangeLog	2017-06-23 23:16:31 UTC (rev 218773)
@@ -1,3 +1,26 @@
+2017-06-23  Youenn Fablet  <[email protected]>
+
+        Set getUserMedia permission to true by default on WTR
+        https://bugs.webkit.org/show_bug.cgi?id=173610
+
+        Reviewed by Alex Christensen.
+
+        Adding a way to reset the getUserMedia permission to pending.
+
+        * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
+        * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
+        (WTR::InjectedBundle::setUserMediaPermissionAsUnset):
+        * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
+        * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
+        (WTR::TestRunner::setUserMediaPermissionAsUnset):
+        * WebKitTestRunner/InjectedBundle/TestRunner.h:
+        * WebKitTestRunner/TestController.cpp:
+        (WTR::TestController::resetStateToConsistentValues):
+        (WTR::TestController::setUserMediaPermissionAsUnset):
+        * WebKitTestRunner/TestController.h:
+        * WebKitTestRunner/TestInvocation.cpp:
+        (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
+
 2017-06-23  Alex Christensen  <[email protected]>
 
         Add SPI to WKURLSchemeTask for redirection

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2017-06-23 23:16:31 UTC (rev 218773)
@@ -189,6 +189,7 @@
 
     // MediaStream
     void setUserMediaPermission(boolean value);
+    void resetUserMediaPermission();
     void setUserMediaPersistentPermissionForOrigin(boolean permission, DOMString origin, DOMString parentOrigin);
     unsigned long userMediaPermissionRequestCountForOrigin(DOMString origin, DOMString parentOrigin);
     void resetUserMediaPermissionRequestCountForOrigin(DOMString origin, DOMString parentOrigin);

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2017-06-23 23:16:31 UTC (rev 218773)
@@ -604,6 +604,12 @@
     WKBundlePagePostMessage(page()->page(), messageName.get(), messageBody.get());
 }
 
+void InjectedBundle::resetUserMediaPermission()
+{
+    auto messageName = adoptWK(WKStringCreateWithUTF8CString("ResetUserMediaPermission"));
+    WKBundlePagePostMessage(page()->page(), messageName.get(), 0);
+}
+
 void InjectedBundle::setUserMediaPersistentPermissionForOrigin(bool permission, WKStringRef origin, WKStringRef parentOrigin)
 {
     auto messageName = adoptWK(WKStringCreateWithUTF8CString("SetUserMediaPersistentPermissionForOrigin"));

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.h (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.h	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.h	2017-06-23 23:16:31 UTC (rev 218773)
@@ -103,6 +103,7 @@
 
     // MediaStream.
     void setUserMediaPermission(bool);
+    void resetUserMediaPermission();
     void setUserMediaPersistentPermissionForOrigin(bool permission, WKStringRef origin, WKStringRef parentOrigin);
     unsigned userMediaPermissionRequestCountForOrigin(WKStringRef origin, WKStringRef parentOrigin) const;
     void resetUserMediaPermissionRequestCountForOrigin(WKStringRef origin, WKStringRef parentOrigin);

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2017-06-23 23:16:31 UTC (rev 218773)
@@ -913,6 +913,12 @@
     InjectedBundle::singleton().setUserMediaPermission(enabled);
 }
 
+void TestRunner::resetUserMediaPermission()
+{
+    // FIXME: this should be done by frame.
+    InjectedBundle::singleton().resetUserMediaPermission();
+}
+
 void TestRunner::setUserMediaPersistentPermissionForOrigin(bool permission, JSStringRef origin, JSStringRef parentOrigin)
 {
     WKRetainPtr<WKStringRef> originWK = toWK(origin);

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2017-06-23 23:16:31 UTC (rev 218773)
@@ -288,6 +288,7 @@
 
     // MediaStream
     void setUserMediaPermission(bool);
+    void resetUserMediaPermission();
     void setUserMediaPersistentPermissionForOrigin(bool permission, JSStringRef origin, JSStringRef parentOrigin);
     unsigned userMediaPermissionRequestCountForOrigin(JSStringRef origin, JSStringRef parentOrigin) const;
     void resetUserMediaPermissionRequestCountForOrigin(JSStringRef origin, JSStringRef parentOrigin);

Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/TestController.cpp	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp	2017-06-23 23:16:31 UTC (rev 218773)
@@ -803,8 +803,7 @@
     // Reset UserMedia permissions.
     m_userMediaPermissionRequests.clear();
     m_cachedUserMediaPermissions.clear();
-    m_isUserMediaPermissionSet = false;
-    m_isUserMediaPermissionAllowed = false;
+    setUserMediaPermission(true);
 
     // Reset Custom Policy Delegate.
     setCustomPolicyDelegate(false, false);
@@ -1890,6 +1889,11 @@
     decidePolicyForUserMediaPermissionRequestIfPossible();
 }
 
+void TestController::resetUserMediaPermission()
+{
+    m_isUserMediaPermissionSet = false;
+}
+
 class OriginSettings : public RefCounted<OriginSettings> {
 public:
     explicit OriginSettings()

Modified: trunk/Tools/WebKitTestRunner/TestController.h (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/TestController.h	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/TestController.h	2017-06-23 23:16:31 UTC (rev 218773)
@@ -102,6 +102,7 @@
     void getUserMediaInfoForOrigin(WKFrameRef, WKStringRef originKey, bool&, WKRetainPtr<WKStringRef>&);
     WKStringRef getUserMediaSaltForOrigin(WKFrameRef, WKStringRef originKey);
     void setUserMediaPermission(bool);
+    void resetUserMediaPermission();
     void setUserMediaPersistentPermissionForOrigin(bool, WKStringRef userMediaDocumentOriginString, WKStringRef topLevelDocumentOriginString);
     void handleUserMediaPermissionRequest(WKFrameRef, WKSecurityOriginRef, WKSecurityOriginRef, WKUserMediaPermissionRequestRef);
     void handleCheckOfUserMediaPermissionForOrigin(WKFrameRef, WKSecurityOriginRef, WKSecurityOriginRef, const WKUserMediaPermissionCheckRef&);

Modified: trunk/Tools/WebKitTestRunner/TestInvocation.cpp (218772 => 218773)


--- trunk/Tools/WebKitTestRunner/TestInvocation.cpp	2017-06-23 23:08:45 UTC (rev 218772)
+++ trunk/Tools/WebKitTestRunner/TestInvocation.cpp	2017-06-23 23:16:31 UTC (rev 218773)
@@ -506,6 +506,11 @@
         return;
     }
 
+    if (WKStringIsEqualToUTF8CString(messageName, "ResetUserMediaPermission")) {
+        TestController::singleton().resetUserMediaPermission();
+        return;
+    }
+
     if (WKStringIsEqualToUTF8CString(messageName, "SetUserMediaPersistentPermissionForOrigin")) {
         ASSERT(WKGetTypeID(messageBody) == WKDictionaryGetTypeID());
         WKDictionaryRef messageBodyDictionary = static_cast<WKDictionaryRef>(messageBody);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to