Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1618)

Unified Diff: Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp

Issue 16778002: MediaStream API: Changing the device enumeration to be async (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Moved files Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp
index 3642b5e66f6b27f7501cf63dfd1bfb308ddf653d..607975ac4e46ce2f7d08caa21f54f8b195bb7c92 100644
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp
@@ -32,12 +32,15 @@
#include "MockWebMediaStreamCenter.h"
+#include "TestInterfaces.h"
+#include "WebTestDelegate.h"
#include "public/platform/WebAudioDestinationConsumer.h"
#include "public/platform/WebMediaStream.h"
#include "public/platform/WebMediaStreamCenterClient.h"
#include "public/platform/WebMediaStreamSource.h"
#include "public/platform/WebMediaStreamSourcesRequest.h"
#include "public/platform/WebMediaStreamTrack.h"
+#include "public/platform/WebMediaStreamTrackSourcesRequest.h"
#include "public/platform/WebSourceInfo.h"
#include "public/platform/WebVector.h"
@@ -45,7 +48,29 @@ using namespace WebKit;
namespace WebTestRunner {
-MockWebMediaStreamCenter::MockWebMediaStreamCenter(WebMediaStreamCenterClient* client)
+class MediaStreamTrackSourcesRequestTask : public WebMethodTask<MockWebMediaStreamCenter> {
+public:
+ MediaStreamTrackSourcesRequestTask(MockWebMediaStreamCenter* object, const WebMediaStreamTrackSourcesRequest& request)
+ : WebMethodTask<MockWebMediaStreamCenter>(object)
+ , m_request(request)
+ {
+ }
+
+ virtual void runIfValid() OVERRIDE
+ {
+ size_t size = 2;
+ WebVector<WebSourceInfo> results(size);
+ results[0].initialize("MockAudioDevice#1", WebSourceInfo::SourceKindAudio, "Mock audio device", WebSourceInfo::VideoFacingModeNone);
+ results[1].initialize("MockVideoDevice#1", WebSourceInfo::SourceKindVideo, "Mock video device", WebSourceInfo::VideoFacingModeEnvironment);
+ m_request.requestSucceeded(results);
+ }
+
+private:
+ WebMediaStreamTrackSourcesRequest m_request;
+};
+
+MockWebMediaStreamCenter::MockWebMediaStreamCenter(WebMediaStreamCenterClient* client, TestInterfaces* interfaces)
+ : m_interfaces(interfaces)
{
}
@@ -55,13 +80,9 @@ void MockWebMediaStreamCenter::queryMediaStreamSources(const WebMediaStreamSourc
request.didCompleteQuery(audioSources, videoSources);
}
-bool MockWebMediaStreamCenter::getSourceInfos(const WebString& url, WebVector<WebSourceInfo>& webSourceInfoVector)
+bool MockWebMediaStreamCenter::getMediaStreamTrackSources(const WebMediaStreamTrackSourcesRequest& request)
{
- size_t size = 2;
- WebVector<WebSourceInfo> results(size);
- results[0].initialize("MockAudioDevice#1", WebSourceInfo::SourceKindAudio, "Mock audio device", WebSourceInfo::VideoFacingModeNone);
- results[1].initialize("MockVideoDevice#1", WebSourceInfo::SourceKindVideo, "Mock video device", WebSourceInfo::VideoFacingModeEnvironment);
- webSourceInfoVector.swap(results);
+ m_interfaces->delegate()->postTask(new MediaStreamTrackSourcesRequestTask(this, request));
return true;
}

Powered by Google App Engine
This is Rietveld 408576698