Index: chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc |
diff --git a/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc b/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc |
index ae7df101c08efc0fda7d0b69450f3c2ae0c2083d..8b7a04173d6660f73563ef4c707c23bce0c8545d 100644 |
--- a/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc |
+++ b/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc |
@@ -10,6 +10,8 @@ |
#include "chrome/browser/media/router/media_source_helper.h" |
#include "chrome/browser/media/router/mock_media_router.h" |
#include "chrome/browser/media/router/mock_screen_availability_listener.h" |
+#include "chrome/browser/media/router/offscreen_presentation_manager.h" |
+#include "chrome/browser/media/router/offscreen_presentation_manager_factory.h" |
#include "chrome/browser/media/router/route_request_result.h" |
#include "chrome/browser/media/router/test_helper.h" |
#include "chrome/browser/profiles/profile.h" |
@@ -39,7 +41,7 @@ const char kFrameUrl[] = "http://anotherframeurl.fakeurl.com/"; |
namespace media_router { |
class MockDelegateObserver |
- : public content::PresentationServiceDelegate::Observer { |
+ : public content::PresentationServiceDelegateBase::Observer { |
public: |
MOCK_METHOD0(OnDelegateDestroyed, void()); |
MOCK_METHOD1(OnDefaultPresentationStarted, |
@@ -471,4 +473,24 @@ TEST_F(PresentationServiceDelegateImplTest, SinksObserverCantRegister) { |
render_process_id, render_frame_id, &listener)); |
} |
+TEST_F(PresentationServiceDelegateImplTest, ConnectToOffscreenPresentation) { |
+ content::RenderFrameHost* main_frame = GetWebContents()->GetMainFrame(); |
+ ASSERT_TRUE(main_frame); |
+ int render_process_id = main_frame->GetProcess()->GetID(); |
+ int render_frame_id = main_frame->GetRoutingID(); |
+ |
+ OffscreenPresentationManager* presentation_manager = |
+ OffscreenPresentationManagerFactory:: |
+ GetOrCreateForControllerBrowserContext(GetWebContents()); |
+ |
+ content::PresentationSessionInfo session_info(GURL("presentation_url"), |
+ "presentation_id"); |
+ |
+ EXPECT_EQ(size_t(0), presentation_manager->offscreen_presentations_.size()); |
+ content::PresentationConnectionPtr connection; |
+ delegate_impl_->ConnectToOffscreenPresentation( |
+ render_process_id, render_frame_id, session_info, std::move(connection)); |
+ EXPECT_EQ(size_t(1), presentation_manager->offscreen_presentations_.size()); |
+} |
+ |
} // namespace media_router |