Commit 283f494f authored by Eric Seckler's avatar Eric Seckler Committed by Commit Bot

chromeos: Prepare TrayCastMediaRouter test for PostTask refactor

This delays initialization of MockMediaRouters in the test until the
browser's task executor is initialized.

This is required for the upcoming move of

BrowserThread::GetTaskRunnerForThread to
base::Create*TaskRunnerWithTraits. In the future, TaskRunners can only
be obtained after thread initialization. Since MockMediaRouter obtains
a TaskRunner in its constructor, this patch moves its creation.

Bug: 878356
Change-Id: Idd599d23246d42427d35bccd3c027f0a24427cfa
Reviewed-on: https://chromium-review.googlesource.com/1230024
Commit-Queue: Eric Seckler <eseckler@chromium.org>
Reviewed-by: default avatarJames Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#592081}
parent b521675a
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#include <memory>
#include <vector> #include <vector>
#include "ash/public/cpp/ash_features.h" #include "ash/public/cpp/ash_features.h"
...@@ -110,6 +111,18 @@ class SystemTrayTrayCastMediaRouterChromeOSTest : public InProcessBrowserTest { ...@@ -110,6 +111,18 @@ class SystemTrayTrayCastMediaRouterChromeOSTest : public InProcessBrowserTest {
private: private:
// InProcessBrowserTest: // InProcessBrowserTest:
void PreRunTestOnMainThread() override {
media_router_ = std::make_unique<media_router::MockMediaRouter>();
ON_CALL(*media_router_, RegisterMediaSinksObserver(_))
.WillByDefault(Invoke(
this, &SystemTrayTrayCastMediaRouterChromeOSTest::CaptureSink));
ON_CALL(*media_router_, RegisterMediaRoutesObserver(_))
.WillByDefault(Invoke(
this, &SystemTrayTrayCastMediaRouterChromeOSTest::CaptureRoutes));
CastConfigClientMediaRouter::SetMediaRouterForTest(media_router_.get());
InProcessBrowserTest::PreRunTestOnMainThread();
}
void SetUpOnMainThread() override { void SetUpOnMainThread() override {
InProcessBrowserTest::SetUpOnMainThread(); InProcessBrowserTest::SetUpOnMainThread();
// Connect to the ash test interface. // Connect to the ash test interface.
...@@ -123,6 +136,11 @@ class SystemTrayTrayCastMediaRouterChromeOSTest : public InProcessBrowserTest { ...@@ -123,6 +136,11 @@ class SystemTrayTrayCastMediaRouterChromeOSTest : public InProcessBrowserTest {
&ash_message_center_controller_); &ash_message_center_controller_);
} }
void PostRunTestOnMainThread() override {
InProcessBrowserTest::PostRunTestOnMainThread();
CastConfigClientMediaRouter::SetMediaRouterForTest(nullptr);
}
bool CaptureSink(media_router::MediaSinksObserver* media_sinks_observer) { bool CaptureSink(media_router::MediaSinksObserver* media_sinks_observer) {
media_sinks_observer_ = media_sinks_observer; media_sinks_observer_ = media_sinks_observer;
return true; return true;
...@@ -132,21 +150,7 @@ class SystemTrayTrayCastMediaRouterChromeOSTest : public InProcessBrowserTest { ...@@ -132,21 +150,7 @@ class SystemTrayTrayCastMediaRouterChromeOSTest : public InProcessBrowserTest {
media_routes_observer_ = media_routes_observer; media_routes_observer_ = media_routes_observer;
} }
void SetUpInProcessBrowserTestFixture() override { std::unique_ptr<media_router::MockMediaRouter> media_router_;
ON_CALL(media_router_, RegisterMediaSinksObserver(_))
.WillByDefault(Invoke(
this, &SystemTrayTrayCastMediaRouterChromeOSTest::CaptureSink));
ON_CALL(media_router_, RegisterMediaRoutesObserver(_))
.WillByDefault(Invoke(
this, &SystemTrayTrayCastMediaRouterChromeOSTest::CaptureRoutes));
CastConfigClientMediaRouter::SetMediaRouterForTest(&media_router_);
}
void TearDownInProcessBrowserTestFixture() override {
CastConfigClientMediaRouter::SetMediaRouterForTest(nullptr);
}
media_router::MockMediaRouter media_router_;
media_router::MediaSinksObserver* media_sinks_observer_ = nullptr; media_router::MediaSinksObserver* media_sinks_observer_ = nullptr;
media_router::MediaRoutesObserver* media_routes_observer_ = nullptr; media_router::MediaRoutesObserver* media_routes_observer_ = nullptr;
ash::mojom::SystemTrayTestApiPtr tray_test_api_; ash::mojom::SystemTrayTestApiPtr tray_test_api_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment