| Index: chrome/browser/media/router/discovery/media_sink_service_base_unittest.cc
|
| diff --git a/chrome/browser/media/router/discovery/media_sink_service_base_unittest.cc b/chrome/browser/media/router/discovery/media_sink_service_base_unittest.cc
|
| index eac9ea494a9d2a82060a0916d1771c883f69449a..5294dde2f8dfdb349b27073796e81a033615c0bb 100644
|
| --- a/chrome/browser/media/router/discovery/media_sink_service_base_unittest.cc
|
| +++ b/chrome/browser/media/router/discovery/media_sink_service_base_unittest.cc
|
| @@ -46,6 +46,12 @@ std::vector<media_router::MediaSinkInternal> CreateDialMediaSinks() {
|
|
|
| namespace media_router {
|
|
|
| +class MockMediaSinkServiceObserver : public MediaSinkService::Observer {
|
| + public:
|
| + MOCK_METHOD1(OnMediaSinkAdded, void(const MediaSinkInternal& sink));
|
| + MOCK_METHOD0(OnMediaSinksRemoved, void());
|
| +};
|
| +
|
| class TestMediaSinkServiceBase : public MediaSinkServiceBase {
|
| public:
|
| explicit TestMediaSinkServiceBase(const OnSinksDiscoveredCallback& callback)
|
| @@ -140,4 +146,24 @@ TEST_F(MediaSinkServiceBaseTest, TestFetchCompleted_Mixed) {
|
| TestFetchCompleted(old_sinks, new_sinks);
|
| }
|
|
|
| +TEST_F(MediaSinkServiceBaseTest, TestAddRemoveSinks) {
|
| + MockMediaSinkServiceObserver mock_observer;
|
| +
|
| + auto sinks = CreateDialMediaSinks();
|
| + EXPECT_CALL(mock_observer, OnMediaSinkAdded(sinks[0]));
|
| + EXPECT_CALL(mock_observer, OnMediaSinkAdded(sinks[1]));
|
| +
|
| + media_sink_service_->AddObserver(&mock_observer);
|
| + media_sink_service_->AddSink(sinks[0]);
|
| + EXPECT_EQ(size_t(1), media_sink_service_->GetCurrentSinksSize());
|
| + media_sink_service_->AddSink(sinks[0]);
|
| + EXPECT_EQ(size_t(1), media_sink_service_->GetCurrentSinksSize());
|
| + media_sink_service_->AddSink(sinks[1]);
|
| + EXPECT_EQ(size_t(2), media_sink_service_->GetCurrentSinksSize());
|
| +
|
| + EXPECT_CALL(mock_observer, OnMediaSinksRemoved());
|
| + media_sink_service_->RemoveSinks();
|
| + EXPECT_EQ(size_t(0), media_sink_service_->GetCurrentSinksSize());
|
| +}
|
| +
|
| } // namespace media_router
|
|
|