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

Unified Diff: content/renderer/media/media_stream_video_source_unittest.cc

Issue 366243003: VideoTrackAdapter: Add passing frames monitor, notify MSVCS -> MSVTrack(s) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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: content/renderer/media/media_stream_video_source_unittest.cc
diff --git a/content/renderer/media/media_stream_video_source_unittest.cc b/content/renderer/media/media_stream_video_source_unittest.cc
index 71ee6fca7ecd6eb1cdea122d6a5dd8ce3528db4e..eba1af1db9c49909c2e0b4641f22515094eaa0bb 100644
--- a/content/renderer/media/media_stream_video_source_unittest.cc
+++ b/content/renderer/media/media_stream_video_source_unittest.cc
@@ -19,6 +19,10 @@
#include "media/base/video_frame.h"
#include "testing/gtest/include/gtest/gtest.h"
+using ::testing::_;
+using ::testing::DoAll;
+using ::testing::SaveArg;
+
namespace content {
ACTION_P(RunClosure, closure) {
@@ -720,4 +724,27 @@ TEST_F(MediaStreamVideoSourceTest, Use0FpsSupportedFormat) {
MediaStreamVideoSink::RemoveFromVideoTrack(&sink, track);
}
+// Test that a source producing no frames calls back the MSVCS to tell so.
+TEST_F(MediaStreamVideoSourceTest, MutedSource) {
+ MockMediaConstraintFactory factory;
+ blink::WebMediaStreamTrack track =
+ CreateTrackAndStartSource(factory.CreateWebMediaConstraints(),
+ 640, 480, 30);
+
+ MockMediaStreamVideoSink sink;
+ MediaStreamVideoSink::AddToVideoTrack(&sink, sink.GetDeliverFrameCB(), track);
+
+ base::RunLoop run_loop;
+ base::Closure quit_closure = run_loop.QuitClosure();
+ bool muted_state = false;
+ EXPECT_CALL(*mock_source(), SetMutedState(_))
+ .WillOnce(DoAll(SaveArg<0>(&muted_state), RunClosure(quit_closure)));
+ run_loop.Run();
+ // TODO(mcasas): When added, check |track|'s (WebMediaStreamTrack) Muted
+ // attribute, should be false.
+ EXPECT_EQ(muted_state, true);
+
+ MediaStreamVideoSink::RemoveFromVideoTrack(&sink, track);
+}
+
} // namespace content

Powered by Google App Engine
This is Rietveld 408576698