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);