message: Add canonical mock for MediaStreamInterface
  Needed to let upstream APIs integrate changes more easily.
  Cr-Commit-Position: refs/heads/main@{#36613}
diff: @@ -84,6 +84,52 @@ class MockAudioTrack final : public rtc::RefCountedObject<AudioTrackInterface> {
  MockAudioTrack() = default;
  };
  +class MockMediaStream : public MediaStreamInterface {
  + public:
  + MOCK_METHOD(std::string, id, (), (const override));
  + MOCK_METHOD(AudioTrackVector, GetAudioTracks, (), (override));
  + MOCK_METHOD(VideoTrackVector, GetVideoTracks, (), (override));
  + MOCK_METHOD(rtc::scoped_refptr<AudioTrackInterface>,
  + FindAudioTrack,
  + (const std::string& track_id),
  + (override));
  + MOCK_METHOD(rtc::scoped_refptr<VideoTrackInterface>,
  + FindVideoTrack,
  + (const std::string& track_id),
  + (override));
  + MOCK_METHOD(bool,
  + AddTrack,
  + (rtc::scoped_refptr<AudioTrackInterface> track),
  + (override));
  + MOCK_METHOD(bool,
  + AddTrack,
  + (rtc::scoped_refptr<VideoTrackInterface> track),
  + (override));
  + MOCK_METHOD(bool,
  + RemoveTrack,
  + (rtc::scoped_refptr<AudioTrackInterface> track),
  + (override));
  + MOCK_METHOD(bool,
  + RemoveTrack,
  + (rtc::scoped_refptr<VideoTrackInterface> track),
  + (override));
  + // Old AddTrack/RemoveTrack methods - slated for removal
  + MOCK_METHOD(bool, AddTrack, (AudioTrackInterface * track), (override));
  + MOCK_METHOD(bool, AddTrack, (VideoTrackInterface * track), (override));
  + MOCK_METHOD(bool, RemoveTrack, (AudioTrackInterface * track), (override));
  + MOCK_METHOD(bool, RemoveTrack, (VideoTrackInterface * track), (override));
  + MOCK_METHOD(void,
  + RegisterObserver,
  + (ObserverInterface * observer),
  + (override));
  + MOCK_METHOD(void,
  + UnregisterObserver,
  + (ObserverInterface * observer),
  + (override));
  +};
  +
  +static_assert(!std::is_abstract_v<rtc::RefCountedObject<MockMediaStream>>, "");
  +
  } // namespace webrtc
  #endif // API_TEST_MOCK_MEDIA_STREAM_INTERFACE_H_
  