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

Unified Diff: talk/app/webrtc/mediastreamsignaling_unittest.cc

Issue 1351803002: Exposing RtpSenders and RtpReceivers from PeerConnection. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 5 years, 3 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: talk/app/webrtc/mediastreamsignaling_unittest.cc
diff --git a/talk/app/webrtc/mediastreamsignaling_unittest.cc b/talk/app/webrtc/mediastreamsignaling_unittest.cc
index e5f20ec0c10526ea25829a0b9221d9022f3c82e1..91a39db3050b6c4dacaefc503d0b36adf6f71521 100644
--- a/talk/app/webrtc/mediastreamsignaling_unittest.cc
+++ b/talk/app/webrtc/mediastreamsignaling_unittest.cc
@@ -70,6 +70,9 @@ using webrtc::StreamCollectionInterface;
typedef PeerConnectionInterface::RTCOfferAnswerOptions RTCOfferAnswerOptions;
+static const char kAudioMid[] = "audio";
+static const char kVideoMid[] = "video";
+
// Reference SDP with a MediaStream with label "stream1" and audio track with
// id "audio_1" and a video track with id "video_1;
static const char kSdpStringWithStream1[] =
@@ -312,14 +315,16 @@ class MockSignalingObserver : public webrtc::MediaStreamSignalingObserver {
virtual void OnAddLocalAudioTrack(MediaStreamInterface* stream,
AudioTrackInterface* audio_track,
- uint32 ssrc) {
- AddTrack(&local_audio_tracks_, stream, audio_track, ssrc);
+ uint32 ssrc,
+ const std::string& mid) {
+ AddTrack(&local_audio_tracks_, stream, audio_track, ssrc, mid);
}
virtual void OnAddLocalVideoTrack(MediaStreamInterface* stream,
VideoTrackInterface* video_track,
- uint32 ssrc) {
- AddTrack(&local_video_tracks_, stream, video_track, ssrc);
+ uint32 ssrc,
+ const std::string& mid) {
+ AddTrack(&local_video_tracks_, stream, video_track, ssrc, mid);
}
virtual void OnRemoveLocalAudioTrack(MediaStreamInterface* stream,
@@ -335,14 +340,16 @@ class MockSignalingObserver : public webrtc::MediaStreamSignalingObserver {
virtual void OnAddRemoteAudioTrack(MediaStreamInterface* stream,
AudioTrackInterface* audio_track,
- uint32 ssrc) {
- AddTrack(&remote_audio_tracks_, stream, audio_track, ssrc);
+ uint32 ssrc,
+ const std::string& mid) {
+ AddTrack(&remote_audio_tracks_, stream, audio_track, ssrc, mid);
}
virtual void OnAddRemoteVideoTrack(MediaStreamInterface* stream,
VideoTrackInterface* video_track,
- uint32 ssrc) {
- AddTrack(&remote_video_tracks_, stream, video_track, ssrc);
+ uint32 ssrc,
+ const std::string& mid) {
+ AddTrack(&remote_video_tracks_, stream, video_track, ssrc, mid);
}
virtual void OnRemoveRemoteAudioTrack(MediaStreamInterface* stream,
@@ -368,55 +375,64 @@ class MockSignalingObserver : public webrtc::MediaStreamSignalingObserver {
size_t NumberOfRemoteAudioTracks() { return remote_audio_tracks_.size(); }
- void VerifyRemoteAudioTrack(const std::string& stream_label,
- const std::string& track_id,
- uint32 ssrc) {
- VerifyTrack(remote_audio_tracks_, stream_label, track_id, ssrc);
+ void VerifyRemoteAudioTrack(const std::string& stream_label,
+ const std::string& track_id,
+ uint32 ssrc,
+ const std::string& mid) {
+ VerifyTrack(remote_audio_tracks_, stream_label, track_id, ssrc, mid);
}
size_t NumberOfRemoteVideoTracks() { return remote_video_tracks_.size(); }
- void VerifyRemoteVideoTrack(const std::string& stream_label,
- const std::string& track_id,
- uint32 ssrc) {
- VerifyTrack(remote_video_tracks_, stream_label, track_id, ssrc);
+ void VerifyRemoteVideoTrack(const std::string& stream_label,
+ const std::string& track_id,
+ uint32 ssrc,
+ const std::string& mid) {
+ VerifyTrack(remote_video_tracks_, stream_label, track_id, ssrc, mid);
}
size_t NumberOfLocalAudioTracks() { return local_audio_tracks_.size(); }
- void VerifyLocalAudioTrack(const std::string& stream_label,
- const std::string& track_id,
- uint32 ssrc) {
- VerifyTrack(local_audio_tracks_, stream_label, track_id, ssrc);
+ void VerifyLocalAudioTrack(const std::string& stream_label,
+ const std::string& track_id,
+ uint32 ssrc,
+ const std::string& mid) {
+ VerifyTrack(local_audio_tracks_, stream_label, track_id, ssrc, mid);
}
size_t NumberOfLocalVideoTracks() { return local_video_tracks_.size(); }
- void VerifyLocalVideoTrack(const std::string& stream_label,
- const std::string& track_id,
- uint32 ssrc) {
- VerifyTrack(local_video_tracks_, stream_label, track_id, ssrc);
+ void VerifyLocalVideoTrack(const std::string& stream_label,
+ const std::string& track_id,
+ uint32 ssrc,
+ const std::string& mid) {
+ VerifyTrack(local_video_tracks_, stream_label, track_id, ssrc, mid);
}
private:
struct TrackInfo {
TrackInfo() {}
- TrackInfo(const std::string& stream_label, const std::string track_id,
- uint32 ssrc)
+ TrackInfo(const std::string& stream_label,
+ const std::string track_id,
+ uint32 ssrc,
+ const std::string& mid)
: stream_label(stream_label),
track_id(track_id),
- ssrc(ssrc) {
- }
+ ssrc(ssrc),
+ mid(mid) {}
std::string stream_label;
std::string track_id;
uint32 ssrc;
+ std::string mid;
};
typedef std::vector<TrackInfo> TrackInfos;
- void AddTrack(TrackInfos* track_infos, MediaStreamInterface* stream,
+ void AddTrack(TrackInfos* track_infos,
+ MediaStreamInterface* stream,
MediaStreamTrackInterface* track,
- uint32 ssrc) {
- (*track_infos).push_back(TrackInfo(stream->label(), track->id(),
- ssrc));
+ uint32 ssrc,
+ const std::string& mid) {
+ (*track_infos)
+ .push_back(TrackInfo(stream->label(), track->id(), ssrc, mid));
}
void RemoveTrack(TrackInfos* track_infos, MediaStreamInterface* stream,
@@ -442,16 +458,17 @@ class MockSignalingObserver : public webrtc::MediaStreamSignalingObserver {
return NULL;
}
-
void VerifyTrack(const TrackInfos& track_infos,
const std::string& stream_label,
const std::string& track_id,
- uint32 ssrc) {
+ uint32 ssrc,
+ const std::string& mid) {
const TrackInfo* track_info = FindTrackInfo(track_infos,
stream_label,
track_id);
ASSERT_TRUE(track_info != NULL);
EXPECT_EQ(ssrc, track_info->ssrc);
+ EXPECT_EQ(mid, track_info->mid);
}
TrackInfos remote_audio_tracks_;
@@ -805,9 +822,9 @@ TEST_F(MediaStreamSignalingTest, UpdateRemoteStreams) {
EXPECT_TRUE(CompareStreamCollections(observer_->remote_streams(),
reference.get()));
EXPECT_EQ(1u, observer_->NumberOfRemoteAudioTracks());
- observer_->VerifyRemoteAudioTrack(kStreams[0], kAudioTracks[0], 1);
+ observer_->VerifyRemoteAudioTrack(kStreams[0], kAudioTracks[0], 1, kAudioMid);
EXPECT_EQ(1u, observer_->NumberOfRemoteVideoTracks());
- observer_->VerifyRemoteVideoTrack(kStreams[0], kVideoTracks[0], 2);
+ observer_->VerifyRemoteVideoTrack(kStreams[0], kVideoTracks[0], 2, kVideoMid);
ASSERT_EQ(1u, observer_->remote_streams()->count());
MediaStreamInterface* remote_stream = observer_->remote_streams()->at(0);
EXPECT_TRUE(remote_stream->GetVideoTracks()[0]->GetSource() != NULL);
@@ -828,11 +845,11 @@ TEST_F(MediaStreamSignalingTest, UpdateRemoteStreams) {
reference2.get()));
EXPECT_EQ(2u, observer_->NumberOfRemoteAudioTracks());
- observer_->VerifyRemoteAudioTrack(kStreams[0], kAudioTracks[0], 1);
- observer_->VerifyRemoteAudioTrack(kStreams[1], kAudioTracks[1], 3);
+ observer_->VerifyRemoteAudioTrack(kStreams[0], kAudioTracks[0], 1, kAudioMid);
+ observer_->VerifyRemoteAudioTrack(kStreams[1], kAudioTracks[1], 3, kAudioMid);
EXPECT_EQ(2u, observer_->NumberOfRemoteVideoTracks());
- observer_->VerifyRemoteVideoTrack(kStreams[0], kVideoTracks[0], 2);
- observer_->VerifyRemoteVideoTrack(kStreams[1], kVideoTracks[1], 4);
+ observer_->VerifyRemoteVideoTrack(kStreams[0], kVideoTracks[0], 2, kVideoMid);
+ observer_->VerifyRemoteVideoTrack(kStreams[1], kVideoTracks[1], 4, kVideoMid);
}
// This test verifies that the remote MediaStreams corresponding to a received
@@ -958,8 +975,8 @@ TEST_F(MediaStreamSignalingTest, SdpWithoutMsidCreatesDefaultStream) {
EXPECT_EQ("defaulta0", remote_stream->GetAudioTracks()[0]->id());
ASSERT_EQ(1u, remote_stream->GetVideoTracks().size());
EXPECT_EQ("defaultv0", remote_stream->GetVideoTracks()[0]->id());
- observer_->VerifyRemoteAudioTrack("default", "defaulta0", 0);
- observer_->VerifyRemoteVideoTrack("default", "defaultv0", 0);
+ observer_->VerifyRemoteAudioTrack("default", "defaulta0", 0, kAudioMid);
+ observer_->VerifyRemoteVideoTrack("default", "defaultv0", 0, kVideoMid);
}
// This tests that a default MediaStream is created if a remote session
@@ -1065,10 +1082,10 @@ TEST_F(MediaStreamSignalingTest, LocalDescriptionChanged) {
signaling_->OnLocalDescriptionChanged(desc_1.get());
EXPECT_EQ(2u, observer_->NumberOfLocalAudioTracks());
EXPECT_EQ(2u, observer_->NumberOfLocalVideoTracks());
- observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1);
- observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2);
- observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[1], 3);
- observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[1], 4);
+ observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2, kVideoMid);
+ observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[1], 3, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[1], 4, kVideoMid);
// Remove an audio and video track.
rtc::scoped_ptr<SessionDescriptionInterface> desc_2;
@@ -1076,8 +1093,8 @@ TEST_F(MediaStreamSignalingTest, LocalDescriptionChanged) {
signaling_->OnLocalDescriptionChanged(desc_2.get());
EXPECT_EQ(1u, observer_->NumberOfLocalAudioTracks());
EXPECT_EQ(1u, observer_->NumberOfLocalVideoTracks());
- observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1);
- observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2);
+ observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2, kVideoMid);
}
// This test that the correct MediaStreamSignalingObserver methods are called
@@ -1094,10 +1111,10 @@ TEST_F(MediaStreamSignalingTest, AddLocalStreamAfterLocalDescriptionChanged) {
signaling_->AddLocalStream(reference_collection_->at(0));
EXPECT_EQ(2u, observer_->NumberOfLocalAudioTracks());
EXPECT_EQ(2u, observer_->NumberOfLocalVideoTracks());
- observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1);
- observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2);
- observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[1], 3);
- observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[1], 4);
+ observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2, kVideoMid);
+ observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[1], 3, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[1], 4, kVideoMid);
}
// This test that the correct MediaStreamSignalingObserver methods are called
@@ -1111,8 +1128,8 @@ TEST_F(MediaStreamSignalingTest, ChangeSsrcOnTrackInLocalSessionDescription) {
signaling_->OnLocalDescriptionChanged(desc.get());
EXPECT_EQ(1u, observer_->NumberOfLocalAudioTracks());
EXPECT_EQ(1u, observer_->NumberOfLocalVideoTracks());
- observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1);
- observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2);
+ observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 1, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 2, kVideoMid);
// Change the ssrc of the audio and video track.
std::string sdp;
@@ -1134,8 +1151,8 @@ TEST_F(MediaStreamSignalingTest, ChangeSsrcOnTrackInLocalSessionDescription) {
signaling_->OnLocalDescriptionChanged(updated_desc.get());
EXPECT_EQ(1u, observer_->NumberOfLocalAudioTracks());
EXPECT_EQ(1u, observer_->NumberOfLocalVideoTracks());
- observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 97);
- observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 98);
+ observer_->VerifyLocalAudioTrack(kStreams[0], kAudioTracks[0], 97, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[0], kVideoTracks[0], 98, kVideoMid);
}
// This test that the correct MediaStreamSignalingObserver methods are called
@@ -1151,8 +1168,10 @@ TEST_F(MediaStreamSignalingTest, SignalSameTracksInSeparateMediaStream) {
EXPECT_EQ(1u, observer_->NumberOfLocalVideoTracks());
std::string stream_label_0 = kStreams[0];
- observer_->VerifyLocalAudioTrack(stream_label_0, kAudioTracks[0], 1);
- observer_->VerifyLocalVideoTrack(stream_label_0, kVideoTracks[0], 2);
+ observer_->VerifyLocalAudioTrack(stream_label_0, kAudioTracks[0], 1,
+ kAudioMid);
+ observer_->VerifyLocalVideoTrack(stream_label_0, kVideoTracks[0], 2,
+ kVideoMid);
// Add a new MediaStream but with the same tracks as in the first stream.
std::string stream_label_1 = kStreams[1];
@@ -1173,8 +1192,8 @@ TEST_F(MediaStreamSignalingTest, SignalSameTracksInSeparateMediaStream) {
sdp, NULL));
signaling_->OnLocalDescriptionChanged(updated_desc.get());
- observer_->VerifyLocalAudioTrack(kStreams[1], kAudioTracks[0], 1);
- observer_->VerifyLocalVideoTrack(kStreams[1], kVideoTracks[0], 2);
+ observer_->VerifyLocalAudioTrack(kStreams[1], kAudioTracks[0], 1, kAudioMid);
+ observer_->VerifyLocalVideoTrack(kStreams[1], kVideoTracks[0], 2, kVideoMid);
EXPECT_EQ(1u, observer_->NumberOfLocalAudioTracks());
EXPECT_EQ(1u, observer_->NumberOfLocalVideoTracks());
}

Powered by Google App Engine
This is Rietveld 408576698