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

Side by Side Diff: chrome/browser/ui/webui/media_router/query_result_manager_unittest.cc

Issue 1132903002: [MediaRouter] Add implementation of PresentationServiceDelegate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addresses Wez's comments Created 5 years, 6 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/bind.h" 5 #include "base/bind.h"
6 #include "base/containers/hash_tables.h" 6 #include "base/containers/hash_tables.h"
7 #include "base/json/json_writer.h" 7 #include "base/json/json_writer.h"
8 #include "base/memory/scoped_vector.h" 8 #include "base/memory/scoped_vector.h"
9 #include "base/strings/stringprintf.h" 9 #include "base/strings/stringprintf.h"
10 #include "chrome/browser/media/router/media_sinks_observer.h" 10 #include "chrome/browser/media/router/media_sinks_observer.h"
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 87
88 TEST_F(QueryResultManagerTest, StartStopSinksQuery) { 88 TEST_F(QueryResultManagerTest, StartStopSinksQuery) {
89 CastModeSet cast_modes; 89 CastModeSet cast_modes;
90 90
91 query_result_manager_.GetSupportedCastModes(&cast_modes); 91 query_result_manager_.GetSupportedCastModes(&cast_modes);
92 EXPECT_TRUE(cast_modes.empty()); 92 EXPECT_TRUE(cast_modes.empty());
93 MediaSource actual_source = 93 MediaSource actual_source =
94 query_result_manager_.GetSourceForCastMode(MediaCastMode::DEFAULT); 94 query_result_manager_.GetSourceForCastMode(MediaCastMode::DEFAULT);
95 EXPECT_TRUE(actual_source.Empty()); 95 EXPECT_TRUE(actual_source.Empty());
96 96
97 MediaSource source(ForPresentationUrl("http://fooUrl")); 97 MediaSource source(MediaSourceForPresentationUrl("http://fooUrl"));
98 EXPECT_CALL(mock_router_, RegisterMediaSinksObserver(_)) 98 EXPECT_CALL(mock_router_, RegisterMediaSinksObserver(_))
99 .WillOnce(Return(true)); 99 .WillOnce(Return(true));
100 query_result_manager_.StartSinksQuery(MediaCastMode::DEFAULT, source); 100 query_result_manager_.StartSinksQuery(MediaCastMode::DEFAULT, source);
101 101
102 query_result_manager_.GetSupportedCastModes(&cast_modes); 102 query_result_manager_.GetSupportedCastModes(&cast_modes);
103 EXPECT_EQ(1u, cast_modes.size()); 103 EXPECT_EQ(1u, cast_modes.size());
104 EXPECT_TRUE(ContainsKey(cast_modes, MediaCastMode::DEFAULT)); 104 EXPECT_TRUE(ContainsKey(cast_modes, MediaCastMode::DEFAULT));
105 actual_source = query_result_manager_.GetSourceForCastMode( 105 actual_source = query_result_manager_.GetSourceForCastMode(
106 MediaCastMode::DEFAULT); 106 MediaCastMode::DEFAULT);
107 EXPECT_TRUE(source.Equals(actual_source)); 107 EXPECT_TRUE(source.Equals(actual_source));
108 108
109 // Register a different source for the same cast mode. 109 // Register a different source for the same cast mode.
110 MediaSource another_source(ForPresentationUrl("http://barUrl")); 110 MediaSource another_source(MediaSourceForPresentationUrl("http://barUrl"));
111 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1); 111 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1);
112 EXPECT_CALL(mock_router_, RegisterMediaSinksObserver(_)) 112 EXPECT_CALL(mock_router_, RegisterMediaSinksObserver(_))
113 .WillOnce(Return(true)); 113 .WillOnce(Return(true));
114 query_result_manager_.StartSinksQuery( 114 query_result_manager_.StartSinksQuery(
115 MediaCastMode::DEFAULT, another_source); 115 MediaCastMode::DEFAULT, another_source);
116 116
117 query_result_manager_.GetSupportedCastModes(&cast_modes); 117 query_result_manager_.GetSupportedCastModes(&cast_modes);
118 EXPECT_EQ(1u, cast_modes.size()); 118 EXPECT_EQ(1u, cast_modes.size());
119 EXPECT_TRUE(ContainsKey(cast_modes, MediaCastMode::DEFAULT)); 119 EXPECT_TRUE(ContainsKey(cast_modes, MediaCastMode::DEFAULT));
120 actual_source = query_result_manager_.GetSourceForCastMode( 120 actual_source = query_result_manager_.GetSourceForCastMode(
(...skipping 11 matching lines...) Expand all
132 } 132 }
133 133
134 TEST_F(QueryResultManagerTest, MultipleQueries) { 134 TEST_F(QueryResultManagerTest, MultipleQueries) {
135 MediaSink sink1("sinkId1", "Sink 1"); 135 MediaSink sink1("sinkId1", "Sink 1");
136 MediaSink sink2("sinkId2", "Sink 2"); 136 MediaSink sink2("sinkId2", "Sink 2");
137 MediaSink sink3("sinkId3", "Sink 3"); 137 MediaSink sink3("sinkId3", "Sink 3");
138 MediaSink sink4("sinkId4", "Sink 4"); 138 MediaSink sink4("sinkId4", "Sink 4");
139 MediaSink sink5("sinkId5", "Sink 5"); 139 MediaSink sink5("sinkId5", "Sink 5");
140 140
141 query_result_manager_.AddObserver(&mock_observer_); 141 query_result_manager_.AddObserver(&mock_observer_);
142 DiscoverSinks(MediaCastMode::DEFAULT, ForPresentationUrl("http://barUrl")); 142 DiscoverSinks(MediaCastMode::DEFAULT,
143 DiscoverSinks(MediaCastMode::TAB_MIRROR, ForTabMediaSource(123)); 143 MediaSourceForPresentationUrl("http://barUrl"));
144 DiscoverSinks(MediaCastMode::TAB_MIRROR, MediaSourceForTab(123));
144 145
145 // Scenario (results in this order): 146 // Scenario (results in this order):
146 // Action: DEFAULT -> [1, 2, 3] 147 // Action: DEFAULT -> [1, 2, 3]
147 // Expected result: 148 // Expected result:
148 // Sinks: [1 -> {DEFAULT}, 2 -> {DEFAULT}, 3 -> {DEFAULT}] 149 // Sinks: [1 -> {DEFAULT}, 2 -> {DEFAULT}, 3 -> {DEFAULT}]
149 std::vector<MediaSinkWithCastModes> expected_sinks; 150 std::vector<MediaSinkWithCastModes> expected_sinks;
150 expected_sinks.push_back(MediaSinkWithCastModes(sink1)); 151 expected_sinks.push_back(MediaSinkWithCastModes(sink1));
151 expected_sinks.back().cast_modes.insert(MediaCastMode::DEFAULT); 152 expected_sinks.back().cast_modes.insert(MediaCastMode::DEFAULT);
152 expected_sinks.push_back(MediaSinkWithCastModes(sink2)); 153 expected_sinks.push_back(MediaSinkWithCastModes(sink2));
153 expected_sinks.back().cast_modes.insert(MediaCastMode::DEFAULT); 154 expected_sinks.back().cast_modes.insert(MediaCastMode::DEFAULT);
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 expected_sinks.push_back(MediaSinkWithCastModes(sink4)); 207 expected_sinks.push_back(MediaSinkWithCastModes(sink4));
207 expected_sinks.back().cast_modes.insert(MediaCastMode::TAB_MIRROR); 208 expected_sinks.back().cast_modes.insert(MediaCastMode::TAB_MIRROR);
208 209
209 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1); 210 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1);
210 EXPECT_CALL(mock_router_, RegisterMediaSinksObserver(_)) 211 EXPECT_CALL(mock_router_, RegisterMediaSinksObserver(_))
211 .WillOnce(Return(true)); 212 .WillOnce(Return(true));
212 EXPECT_CALL(mock_observer_, 213 EXPECT_CALL(mock_observer_,
213 OnResultsUpdated(VectorEquals(expected_sinks))).Times(1); 214 OnResultsUpdated(VectorEquals(expected_sinks))).Times(1);
214 query_result_manager_.StartSinksQuery( 215 query_result_manager_.StartSinksQuery(
215 MediaCastMode::DEFAULT, 216 MediaCastMode::DEFAULT,
216 ForPresentationUrl("http://bazurl.com")); 217 MediaSourceForPresentationUrl("http://bazurl.com"));
217 218
218 // Action: Remove TAB_MIRROR observer 219 // Action: Remove TAB_MIRROR observer
219 // Expected result: 220 // Expected result:
220 // Sinks: [] 221 // Sinks: []
221 expected_sinks.clear(); 222 expected_sinks.clear();
222 EXPECT_CALL(mock_observer_, 223 EXPECT_CALL(mock_observer_,
223 OnResultsUpdated(VectorEquals(expected_sinks))).Times(1); 224 OnResultsUpdated(VectorEquals(expected_sinks))).Times(1);
224 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1); 225 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1);
225 query_result_manager_.StopSinksQuery(MediaCastMode::TAB_MIRROR); 226 query_result_manager_.StopSinksQuery(MediaCastMode::TAB_MIRROR);
226 227
227 // Remaining observers: DEFAULT observer, which will be removed on destruction 228 // Remaining observers: DEFAULT observer, which will be removed on destruction
228 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1); 229 EXPECT_CALL(mock_router_, UnregisterMediaSinksObserver(_)).Times(1);
229 } 230 }
230 231
231 } // namespace media_router 232 } // namespace media_router
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698