Changeset 215413 in webkit
- Timestamp:
- Apr 17, 2017 8:34:17 AM (7 years ago)
- Location:
- trunk/Tools
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Tools/ChangeLog
r215409 r215413 1 2017-04-17 Eric Carlson <eric.carlson@apple.com> 2 3 [MediaStream] Enable getUserMedia API test 4 https://bugs.webkit.org/show_bug.cgi?id=170901 5 <rdar://problem/31656594> 6 7 Reviewed by Youenn Fablet. 8 9 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test. 10 11 * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp: 12 (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack): 13 (TestWebKitAPI::TEST): Enable capture with mock devices. 14 * TestWebKitAPI/Tests/WebKit2/getUserMedia.html: Update to mediaDevices.getUserMedia 15 1 16 2017-04-17 Xan Lopez <xan@igalia.com> 2 17 -
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
r215384 r215413 25 25 07492B3B1DF8B14C00633DE1 /* EnumerateMediaDevices.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07492B3A1DF8AE2D00633DE1 /* EnumerateMediaDevices.cpp */; }; 26 26 07492B3C1DF8B86600633DE1 /* enumerateMediaDevices.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 07492B391DF8ADA400633DE1 /* enumerateMediaDevices.html */; }; 27 074994421EA5034B000DA44E /* getUserMedia.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 4A410F4D19AF7BEF002EBAB5 /* getUserMedia.html */; }; 27 28 07C046CA1E4262A8007201E7 /* CARingBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07C046C91E42573E007201E7 /* CARingBuffer.cpp */; }; 28 29 0F139E771A423A5B00F590F5 /* WeakObjCPtr.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F139E751A423A5300F590F5 /* WeakObjCPtr.mm */; }; … … 670 671 dstSubfolderSpec = 7; 671 672 files = ( 673 074994421EA5034B000DA44E /* getUserMedia.html in Copy Resources */, 672 674 C9BF06EF1E9C132500595E3E /* autoplay-muted-with-controls.html in Copy Resources */, 673 675 F4DEF6ED1E9B4DB60048EF61 /* image-in-link-and-input.html in Copy Resources */, -
trunk/Tools/TestWebKitAPI/Tests/WebKit2/UserMedia.cpp
r213287 r215413 26 26 #include "PlatformWebView.h" 27 27 #include "Test.h" 28 #include <WebKit/WKPagePrivate.h> 29 #include <WebKit/WKPreferencesRef.h> 30 #include <WebKit/WKPreferencesRefPrivate.h> 28 31 #include <WebKit/WKRetainPtr.h> 29 32 #include <string.h> … … 32 35 namespace TestWebKitAPI { 33 36 34 static bool done;37 static bool wasPrompted; 35 38 36 39 void decidePolicyForUserMediaPermissionRequestCallBack(WKPageRef, WKFrameRef, WKSecurityOriginRef, WKSecurityOriginRef, WKUserMediaPermissionRequestRef permissionRequest, const void* /* clientInfo */) … … 55 58 } 56 59 57 done= true;60 wasPrompted = true; 58 61 } 59 62 60 TEST(WebKit2, DISABLED_UserMediaBasic)63 TEST(WebKit2, UserMediaBasic) 61 64 { 62 65 auto context = adoptWK(WKContextCreate()); 63 PlatformWebView webView(context.get()); 64 WKPageUIClientV5 uiClient; 66 67 WKRetainPtr<WKPageGroupRef> pageGroup(AdoptWK, WKPageGroupCreateWithIdentifier(Util::toWK("GetUserMedia").get())); 68 WKPreferencesRef preferences = WKPageGroupGetPreferences(pageGroup.get()); 69 WKPreferencesSetMediaStreamEnabled(preferences, true); 70 WKPreferencesSetFileAccessFromFileURLsAllowed(preferences, true); 71 WKPreferencesSetMediaCaptureRequiresSecureConnection(preferences, false); 72 WKPreferencesSetMockCaptureDevicesEnabled(preferences, true); 73 74 WKPageUIClientV6 uiClient; 65 75 memset(&uiClient, 0, sizeof(uiClient)); 66 67 68 uiClient.base.version = 5; 76 uiClient.base.version = 6; 69 77 uiClient.decidePolicyForUserMediaPermissionRequest = decidePolicyForUserMediaPermissionRequestCallBack; 70 78 79 PlatformWebView webView(context.get(), pageGroup.get()); 71 80 WKPageSetPageUIClient(webView.page(), &uiClient.base); 72 81 73 done= false;82 wasPrompted = false; 74 83 auto url = adoptWK(Util::createURLForResource("getUserMedia", "html")); 84 ASSERT(url.get()); 85 75 86 WKPageLoadURL(webView.page(), url.get()); 76 87 77 Util::run(& done);88 Util::run(&wasPrompted); 78 89 } 79 90 -
trunk/Tools/TestWebKitAPI/Tests/WebKit2/getUserMedia.html
r213287 r215413 1 1 <script> 2 function gotUserMedia(mediaStream)3 {4 console.log("Got user media");5 }2 function gotUserMedia(mediaStream) 3 { 4 console.log("Got user media"); 5 } 6 6 7 function userMediaError(error)8 {9 console.log(error);10 }7 function userMediaError(error) 8 { 9 console.log(error); 10 } 11 11 12 var options = { audio: false, video: true}; 13 navigator.webkitGetUserMedia(options, gotUserMedia, userMediaError); 12 var constraints = { audio: false, video: true}; 13 navigator.mediaDevices.getUserMedia(constraints) 14 .then(gotUserMedia). 15 catch(userMediaError); 14 16 </script>
Note: See TracChangeset
for help on using the changeset viewer.