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

Side by Side Diff: chrome/browser/media/router/media_router_mojo_impl_unittest.cc

Issue 1177073003: [MediaRouter] Update MR-2-Extension's PostMessage to return boolean. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rename SendMessage to SendRouteMessage 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 <string> 5 #include <string>
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "base/run_loop.h" 10 #include "base/run_loop.h"
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 class RouteResponseCallbackHandler { 53 class RouteResponseCallbackHandler {
54 public: 54 public:
55 void Invoke(scoped_ptr<MediaRoute> route, const std::string& error_text) { 55 void Invoke(scoped_ptr<MediaRoute> route, const std::string& error_text) {
56 InvokeObserver(route.get(), error_text); 56 InvokeObserver(route.get(), error_text);
57 } 57 }
58 58
59 MOCK_METHOD2(InvokeObserver, 59 MOCK_METHOD2(InvokeObserver,
60 void(MediaRoute* route, const std::string& error_text)); 60 void(MediaRoute* route, const std::string& error_text));
61 }; 61 };
62 62
63 class SendMessageCallbackHandler {
64 public:
65 MOCK_METHOD1(Invoke, void(bool));
66 };
67
63 template <typename T> 68 template <typename T>
64 void StoreAndRun(T* result, const base::Closure& closure, const T& result_val) { 69 void StoreAndRun(T* result, const base::Closure& closure, const T& result_val) {
65 *result = result_val; 70 *result = result_val;
66 closure.Run(); 71 closure.Run();
67 } 72 }
68 73
69 class MediaRouterMojoImplTest : public MediaRouterMojoTest { 74 class MediaRouterMojoImplTest : public MediaRouterMojoTest {
70 public: 75 public:
71 MediaRouterMojoImplTest() {} 76 MediaRouterMojoImplTest() {}
72 ~MediaRouterMojoImplTest() override {} 77 ~MediaRouterMojoImplTest() override {}
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 271
267 EXPECT_CALL(mock_router, UnregisterMediaRoutesObserver(&routes_observer)); 272 EXPECT_CALL(mock_router, UnregisterMediaRoutesObserver(&routes_observer));
268 EXPECT_CALL(mock_router, 273 EXPECT_CALL(mock_router,
269 UnregisterMediaRoutesObserver(&extra_routes_observer)); 274 UnregisterMediaRoutesObserver(&extra_routes_observer));
270 router()->UnregisterMediaRoutesObserver(&routes_observer); 275 router()->UnregisterMediaRoutesObserver(&routes_observer);
271 router()->UnregisterMediaRoutesObserver(&extra_routes_observer); 276 router()->UnregisterMediaRoutesObserver(&extra_routes_observer);
272 EXPECT_CALL(mock_mojo_media_router_service_, StopObservingMediaRoutes()); 277 EXPECT_CALL(mock_mojo_media_router_service_, StopObservingMediaRoutes());
273 ProcessEventLoop(); 278 ProcessEventLoop();
274 } 279 }
275 280
276 TEST_F(MediaRouterMojoImplTest, PostMessage) { 281 TEST_F(MediaRouterMojoImplTest, SendRouteMessage) {
277 EXPECT_CALL(mock_mojo_media_router_service_, 282 EXPECT_CALL(
278 PostMessage(mojo::String(kRouteId), mojo::String(kMessage))); 283 mock_mojo_media_router_service_,
279 router()->PostMessage(kRouteId, kMessage); 284 SendRouteMessage(mojo::String(kRouteId), mojo::String(kMessage), _))
285 .WillOnce(Invoke(
286 [](const MediaRoute::Id& route_id, const std::string& message,
287 const interfaces::MediaRouter::SendRouteMessageCallback& cb) {
288 cb.Run(true);
289 }));
290
291 SendMessageCallbackHandler handler;
292 EXPECT_CALL(handler, Invoke(true));
293 router()->SendRouteMessage(kRouteId, kMessage,
294 base::Bind(&SendMessageCallbackHandler::Invoke,
295 base::Unretained(&handler)));
280 ProcessEventLoop(); 296 ProcessEventLoop();
281 } 297 }
282 298
283 TEST_F(MediaRouterMojoImplTest, QueuedWhileAsleep) { 299 TEST_F(MediaRouterMojoImplTest, QueuedWhileAsleep) {
284 EXPECT_CALL(mock_event_page_tracker_, IsEventPageSuspended(extension_id())) 300 EXPECT_CALL(mock_event_page_tracker_, IsEventPageSuspended(extension_id()))
285 .Times(2) 301 .Times(2)
286 .WillRepeatedly(Return(true)); 302 .WillRepeatedly(Return(true));
287 EXPECT_CALL(mock_event_page_tracker_, WakeEventPage(extension_id(), _)) 303 EXPECT_CALL(mock_event_page_tracker_, WakeEventPage(extension_id(), _))
288 .Times(2) 304 .Times(2)
289 .WillRepeatedly(Return(true)); 305 .WillRepeatedly(Return(true));
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
371 CloseRoute(mojo::String(kRouteId2))); 387 CloseRoute(mojo::String(kRouteId2)));
372 binding.reset(new mojo::Binding<interfaces::MediaRouter>( 388 binding.reset(new mojo::Binding<interfaces::MediaRouter>(
373 &mock_mojo_media_router_service, mojo::GetProxy(&mojo_media_router))); 389 &mock_mojo_media_router_service, mojo::GetProxy(&mojo_media_router)));
374 mojo_media_router_observer->ProvideMediaRouter( 390 mojo_media_router_observer->ProvideMediaRouter(
375 mojo_media_router.Pass(), base::Bind(&ProvideMediaRouterHandler::Invoke, 391 mojo_media_router.Pass(), base::Bind(&ProvideMediaRouterHandler::Invoke,
376 base::Unretained(&provide_handler))); 392 base::Unretained(&provide_handler)));
377 message_loop.RunUntilIdle(); 393 message_loop.RunUntilIdle();
378 } 394 }
379 395
380 } // namespace media_router 396 } // namespace media_router
OLDNEW
« no previous file with comments | « chrome/browser/media/router/media_router_mojo_impl.cc ('k') | chrome/browser/media/router/mock_media_router.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698