Index: chrome/browser/media/router/discovery/dial/dial_media_sink_service_impl.cc |
diff --git a/chrome/browser/media/router/discovery/dial/dial_media_sink_service_impl.cc b/chrome/browser/media/router/discovery/dial/dial_media_sink_service_impl.cc |
index 73551d9cb89211ab8d6db2718cc0951f8391292b..cf8b03d66b609d691a40aac38f5b070249f14741 100644 |
--- a/chrome/browser/media/router/discovery/dial/dial_media_sink_service_impl.cc |
+++ b/chrome/browser/media/router/discovery/dial/dial_media_sink_service_impl.cc |
@@ -31,9 +31,11 @@ void DialMediaSinkServiceImpl::Start() { |
if (dial_registry_) |
return; |
- dial_registry_ = DialRegistry::GetInstance(); |
+ dial_registry_ = |
+ test_dial_registry_ ? test_dial_registry_ : DialRegistry::GetInstance(); |
dial_registry_->RegisterObserver(this); |
dial_registry_->OnListenerAdded(); |
+ MediaSinkServiceBase::StartTimer(); |
} |
void DialMediaSinkServiceImpl::Stop() { |
@@ -44,6 +46,7 @@ void DialMediaSinkServiceImpl::Stop() { |
dial_registry_->OnListenerRemoved(); |
dial_registry_->UnregisterObserver(this); |
dial_registry_ = nullptr; |
+ MediaSinkServiceBase::StopTimer(); |
} |
DeviceDescriptionService* DialMediaSinkServiceImpl::GetDescriptionService() { |
@@ -60,12 +63,8 @@ DeviceDescriptionService* DialMediaSinkServiceImpl::GetDescriptionService() { |
void DialMediaSinkServiceImpl::SetDialRegistryForTest( |
DialRegistry* dial_registry) { |
- DCHECK(!dial_registry_); |
- dial_registry_ = dial_registry; |
- |
- DCHECK(dial_registry); |
- dial_registry_->RegisterObserver(this); |
- dial_registry_->OnListenerAdded(); |
+ DCHECK(!test_dial_registry_); |
+ test_dial_registry_ = dial_registry; |
} |
void DialMediaSinkServiceImpl::SetDescriptionServiceForTest( |
@@ -80,11 +79,6 @@ void DialMediaSinkServiceImpl::OnDialDeviceEvent( |
DVLOG(2) << "DialMediaSinkServiceImpl::OnDialDeviceEvent found " |
<< devices.size() << " devices"; |
- // Timer starts in |OnDialDeviceEvent()|, and expires 3 seconds later. If |
- // |OnDeviceDescriptionAvailable()| is called after |finish_timer_| expires, |
- // |finish_timer_| is restarted. |
- StartTimer(); |
- |
current_sinks_.clear(); |
current_devices_ = devices; |
@@ -125,8 +119,7 @@ void DialMediaSinkServiceImpl::OnDeviceDescriptionAvailable( |
// Start fetch timer again if device description comes back after |
// |finish_timer_| fires. |
- if (!finish_timer_->IsRunning()) |
- StartTimer(); |
+ MediaSinkServiceBase::RestartTimer(); |
} |
void DialMediaSinkServiceImpl::OnDeviceDescriptionError( |