| Index: chrome/browser/ui/webui/media_router/media_router_ui_unittest.cc
|
| diff --git a/chrome/browser/ui/webui/media_router/media_router_ui_unittest.cc b/chrome/browser/ui/webui/media_router/media_router_ui_unittest.cc
|
| index c33173f59dd6fda9f8257a7692fe273b2bc2909d..7acfb6fa6108d3642bb3f8accfba9f6855af47bc 100644
|
| --- a/chrome/browser/ui/webui/media_router/media_router_ui_unittest.cc
|
| +++ b/chrome/browser/ui/webui/media_router/media_router_ui_unittest.cc
|
| @@ -24,7 +24,9 @@ namespace media_router {
|
|
|
| class MockRoutesUpdatedCallback {
|
| public:
|
| - MOCK_METHOD1(OnRoutesUpdated, void(const std::vector<MediaRoute>& routes));
|
| + MOCK_METHOD2(OnRoutesUpdated,
|
| + void(const std::vector<MediaRoute>& routes,
|
| + const std::vector<MediaRoute::Id>& joinable_route_ids));
|
| };
|
|
|
| class MediaRouterUITest : public ::testing::Test {
|
| @@ -77,17 +79,19 @@ TEST_F(MediaRouterUITest, SortedSinks) {
|
| TEST_F(MediaRouterUITest, UIMediaRoutesObserverFiltersNonDisplayRoutes) {
|
| MockMediaRouter mock_router;
|
| EXPECT_CALL(mock_router, RegisterMediaRoutesObserver(_)).Times(1);
|
| + MediaSource media_source("mediaSource");
|
| MockRoutesUpdatedCallback mock_callback;
|
| scoped_ptr<MediaRouterUI::UIMediaRoutesObserver> observer(
|
| new MediaRouterUI::UIMediaRoutesObserver(
|
| - &mock_router, base::Bind(&MockRoutesUpdatedCallback::OnRoutesUpdated,
|
| - base::Unretained(&mock_callback))));
|
| + &mock_router, media_source.id(),
|
| + base::Bind(&MockRoutesUpdatedCallback::OnRoutesUpdated,
|
| + base::Unretained(&mock_callback))));
|
|
|
| - MediaRoute display_route_1("routeId1", MediaSource("mediaSource"), "sinkId1",
|
| + MediaRoute display_route_1("routeId1", media_source, "sinkId1",
|
| "desc 1", true, "", true);
|
| - MediaRoute non_display_route_1("routeId2", MediaSource("mediaSource"),
|
| + MediaRoute non_display_route_1("routeId2", media_source,
|
| "sinkId2", "desc 2", true, "", false);
|
| - MediaRoute display_route_2("routeId2", MediaSource("mediaSource"), "sinkId2",
|
| + MediaRoute display_route_2("routeId3", media_source, "sinkId2",
|
| "desc 2", true, "", true);
|
| std::vector<MediaRoute> routes;
|
| routes.push_back(display_route_1);
|
| @@ -95,9 +99,10 @@ TEST_F(MediaRouterUITest, UIMediaRoutesObserverFiltersNonDisplayRoutes) {
|
| routes.push_back(display_route_2);
|
|
|
| std::vector<MediaRoute> filtered_routes;
|
| - EXPECT_CALL(mock_callback, OnRoutesUpdated(_))
|
| - .WillOnce(SaveArg<0>(&filtered_routes));
|
| - observer->OnRoutesUpdated(routes);
|
| + EXPECT_CALL(mock_callback, OnRoutesUpdated(_, _)).WillOnce(
|
| + SaveArg<0>(&filtered_routes));
|
| + observer->OnRoutesUpdated(routes,
|
| + std::vector<MediaRoute::Id>());
|
|
|
| ASSERT_EQ(2u, filtered_routes.size());
|
| EXPECT_TRUE(display_route_1.Equals(filtered_routes[0]));
|
| @@ -109,6 +114,49 @@ TEST_F(MediaRouterUITest, UIMediaRoutesObserverFiltersNonDisplayRoutes) {
|
| observer.reset();
|
| }
|
|
|
| +TEST_F(MediaRouterUITest,
|
| + UIMediaRoutesObserverFiltersNonDisplayJoinableRoutes) {
|
| + MockMediaRouter mock_router;
|
| + EXPECT_CALL(mock_router, RegisterMediaRoutesObserver(_)).Times(1);
|
| + MediaSource media_source("mediaSource");
|
| + MockRoutesUpdatedCallback mock_callback;
|
| + scoped_ptr<MediaRouterUI::UIMediaRoutesObserver> observer(
|
| + new MediaRouterUI::UIMediaRoutesObserver(
|
| + &mock_router, media_source.id(),
|
| + base::Bind(&MockRoutesUpdatedCallback::OnRoutesUpdated,
|
| + base::Unretained(&mock_callback))));
|
| +
|
| + MediaRoute display_route_1("routeId1", media_source, "sinkId1",
|
| + "desc 1", true, "", true);
|
| + MediaRoute non_display_route_1("routeId2", media_source,
|
| + "sinkId2", "desc 2", true, "", false);
|
| + MediaRoute display_route_2("routeId3", media_source, "sinkId2",
|
| + "desc 2", true, "", true);
|
| + std::vector<MediaRoute> routes;
|
| + routes.push_back(display_route_1);
|
| + routes.push_back(non_display_route_1);
|
| + routes.push_back(display_route_2);
|
| +
|
| + std::vector<MediaRoute::Id> joinable_route_ids;
|
| + joinable_route_ids.push_back("routeId1");
|
| + joinable_route_ids.push_back("routeId2");
|
| + joinable_route_ids.push_back("routeId3");
|
| +
|
| + std::vector<MediaRoute::Id> filtered_joinable_route_ids;
|
| + // Save the filtered joinable routes.
|
| + EXPECT_CALL(mock_callback, OnRoutesUpdated(_, _)).WillOnce(
|
| + SaveArg<1>(&filtered_joinable_route_ids));
|
| + observer->OnRoutesUpdated(routes,
|
| + joinable_route_ids);
|
| +
|
| + ASSERT_EQ(2u, filtered_joinable_route_ids.size());
|
| + EXPECT_EQ(display_route_1.media_route_id(), filtered_joinable_route_ids[0]);
|
| + EXPECT_EQ(display_route_2.media_route_id(), filtered_joinable_route_ids[1]);
|
| +
|
| + EXPECT_CALL(mock_router, UnregisterMediaRoutesObserver(_)).Times(1);
|
| + observer.reset();
|
| +}
|
| +
|
| TEST_F(MediaRouterUITest, GetExtensionNameExtensionPresent) {
|
| std::string id = "extensionid";
|
| GURL url = GURL("chrome-extension://" + id);
|
|
|