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

Unified Diff: chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl_unittest.cc

Issue 2410553002: Show Media Router toolbar icon ephemerally for MR dialogs (Closed)
Patch Set: Deleted the first patch set on accident, responded to Mark's comments inline below Created 4 years, 2 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: chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl_unittest.cc
diff --git a/chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl_unittest.cc b/chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl_unittest.cc
index 29c5c5b587898406e891b4e677e50b24157746cc..3960cf446441b5dcd7e3cdd222dcfc4f1a957265 100644
--- a/chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl_unittest.cc
+++ b/chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl_unittest.cc
@@ -3,6 +3,8 @@
// found in the LICENSE file.
#include "base/macros.h"
+#include "chrome/browser/media/router/media_router_ui_service.h"
+#include "chrome/browser/media/router/test_helper.h"
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/browser_finder.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
@@ -17,7 +19,7 @@ namespace media_router {
class MediaRouterDialogControllerImplTest : public MediaRouterTest {
public:
- MediaRouterDialogControllerImplTest() {}
+ MediaRouterDialogControllerImplTest() : MediaRouterTest(true) {}
~MediaRouterDialogControllerImplTest() override {}
void OpenMediaRouterDialog();
@@ -40,9 +42,8 @@ void MediaRouterDialogControllerImplTest::OpenMediaRouterDialog() {
// Create a reference to initiator contents.
initiator_ = browser()->tab_strip_model()->GetActiveWebContents();
- MediaRouterDialogControllerImpl::CreateForWebContents(initiator_);
dialog_controller_ =
- MediaRouterDialogControllerImpl::FromWebContents(initiator_);
+ MediaRouterDialogControllerImpl::GetOrCreateForWebContents(initiator_);
ASSERT_TRUE(dialog_controller_);
// Get the media router dialog for the initiator.
@@ -97,9 +98,9 @@ TEST_F(MediaRouterDialogControllerImplTest, MultipleMediaRouterDialogs) {
// Create media router dialog for |web_contents_1|.
- MediaRouterDialogControllerImpl::CreateForWebContents(web_contents_1);
MediaRouterDialogControllerImpl* dialog_controller_1 =
- MediaRouterDialogControllerImpl::FromWebContents(web_contents_1);
+ MediaRouterDialogControllerImpl::GetOrCreateForWebContents(
+ web_contents_1);
ASSERT_TRUE(dialog_controller_1);
dialog_controller_1->ShowMediaRouterDialog();
@@ -112,9 +113,9 @@ TEST_F(MediaRouterDialogControllerImplTest, MultipleMediaRouterDialogs) {
EXPECT_EQ(2, tab_strip_model->count());
// Create media router dialog for |web_contents_2|.
- MediaRouterDialogControllerImpl::CreateForWebContents(web_contents_2);
MediaRouterDialogControllerImpl* dialog_controller_2 =
- MediaRouterDialogControllerImpl::FromWebContents(web_contents_2);
+ MediaRouterDialogControllerImpl::GetOrCreateForWebContents(
+ web_contents_2);
ASSERT_TRUE(dialog_controller_2);
dialog_controller_2->ShowMediaRouterDialog();
@@ -229,4 +230,28 @@ TEST_F(MediaRouterDialogControllerImplTest, CloseInitiator) {
// The dialog controller is deleted when the WebContents is closed/destroyed.
}
+TEST_F(MediaRouterDialogControllerImplTest, NotifyActionController) {
+ MockMediaRouterActionController* action_controller =
+ static_cast<MockMediaRouterActionController*>(
+ MediaRouterUIService::Get(browser()->profile())->action_controller());
+ ASSERT_TRUE(action_controller);
+
+ EXPECT_CALL(*action_controller, OnDialogShown());
+ OpenMediaRouterDialog();
+ EXPECT_CALL(*action_controller, OnDialogHidden());
+ dialog_controller_->HideMediaRouterDialog();
+
+ EXPECT_CALL(*action_controller, OnDialogShown());
+ dialog_controller_->ShowMediaRouterDialogForPresentation(
+ base::MakeUnique<CreatePresentationConnectionRequest>(
+ RenderFrameHostId(1, 2), GURL("http://test.com"),
+ GURL("http://example.com"),
+ base::Bind(&MockPresentationSessionSuccessCallback),
+ base::Bind(&MockPresentationSessionErrorCallback)));
+
+ // When |dialog_controller_| is destroyed with its dialog open,
+ // |action_controller| should be notified.
+ EXPECT_CALL(*action_controller, OnDialogHidden());
mark a. foltz 2016/10/17 18:57:40 Is neither callback invoked when the controller is
takumif 2016/10/27 23:06:38 Are you referring to the presentation session succ
+}
+
} // namespace media_router

Powered by Google App Engine
This is Rietveld 408576698