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

Side by Side Diff: remoting/protocol/connection_to_client_unittest.cc

Issue 11364031: remoting: Update calls froms RunAllPending() to RunUntilIdle(). (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "remoting/protocol/connection_to_client.h" 5 #include "remoting/protocol/connection_to_client.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/message_loop.h" 8 #include "base/message_loop.h"
9 #include "base/message_loop_proxy.h" 9 #include "base/message_loop_proxy.h"
10 #include "remoting/base/constants.h" 10 #include "remoting/base/constants.h"
(...skipping 20 matching lines...) Expand all
31 // Allocate a ClientConnection object with the mock objects. 31 // Allocate a ClientConnection object with the mock objects.
32 viewer_.reset(new ConnectionToClient(session_)); 32 viewer_.reset(new ConnectionToClient(session_));
33 viewer_->set_clipboard_stub(&clipboard_stub_); 33 viewer_->set_clipboard_stub(&clipboard_stub_);
34 viewer_->set_host_stub(&host_stub_); 34 viewer_->set_host_stub(&host_stub_);
35 viewer_->set_input_stub(&input_stub_); 35 viewer_->set_input_stub(&input_stub_);
36 viewer_->SetEventHandler(&handler_); 36 viewer_->SetEventHandler(&handler_);
37 EXPECT_CALL(handler_, OnConnectionAuthenticated(viewer_.get())); 37 EXPECT_CALL(handler_, OnConnectionAuthenticated(viewer_.get()));
38 EXPECT_CALL(handler_, OnConnectionChannelsConnected(viewer_.get())); 38 EXPECT_CALL(handler_, OnConnectionChannelsConnected(viewer_.get()));
39 session_->event_handler()->OnSessionStateChange(Session::CONNECTED); 39 session_->event_handler()->OnSessionStateChange(Session::CONNECTED);
40 session_->event_handler()->OnSessionStateChange(Session::AUTHENTICATED); 40 session_->event_handler()->OnSessionStateChange(Session::AUTHENTICATED);
41 message_loop_.RunAllPending(); 41 message_loop_.RunUntilIdle();
42 } 42 }
43 43
44 virtual void TearDown() OVERRIDE { 44 virtual void TearDown() OVERRIDE {
45 viewer_.reset(); 45 viewer_.reset();
46 message_loop_.RunAllPending(); 46 message_loop_.RunUntilIdle();
47 } 47 }
48 48
49 MessageLoop message_loop_; 49 MessageLoop message_loop_;
50 MockConnectionToClientEventHandler handler_; 50 MockConnectionToClientEventHandler handler_;
51 MockClipboardStub clipboard_stub_; 51 MockClipboardStub clipboard_stub_;
52 MockHostStub host_stub_; 52 MockHostStub host_stub_;
53 MockInputStub input_stub_; 53 MockInputStub input_stub_;
54 scoped_ptr<ConnectionToClient> viewer_; 54 scoped_ptr<ConnectionToClient> viewer_;
55 55
56 // Owned by |viewer_|. 56 // Owned by |viewer_|.
57 FakeSession* session_; 57 FakeSession* session_;
58 58
59 private: 59 private:
60 DISALLOW_COPY_AND_ASSIGN(ConnectionToClientTest); 60 DISALLOW_COPY_AND_ASSIGN(ConnectionToClientTest);
61 }; 61 };
62 62
63 TEST_F(ConnectionToClientTest, SendUpdateStream) { 63 TEST_F(ConnectionToClientTest, SendUpdateStream) {
64 scoped_ptr<VideoPacket> packet(new VideoPacket()); 64 scoped_ptr<VideoPacket> packet(new VideoPacket());
65 viewer_->video_stub()->ProcessVideoPacket(packet.Pass(), base::Closure()); 65 viewer_->video_stub()->ProcessVideoPacket(packet.Pass(), base::Closure());
66 66
67 message_loop_.RunAllPending(); 67 message_loop_.RunUntilIdle();
68 68
69 // Verify that something has been written. 69 // Verify that something has been written.
70 // TODO(sergeyu): Verify that the correct data has been written. 70 // TODO(sergeyu): Verify that the correct data has been written.
71 ASSERT_TRUE(session_->GetStreamChannel(kVideoChannelName)); 71 ASSERT_TRUE(session_->GetStreamChannel(kVideoChannelName));
72 EXPECT_GT(session_->GetStreamChannel(kVideoChannelName)-> 72 EXPECT_GT(session_->GetStreamChannel(kVideoChannelName)->
73 written_data().size(), 0u); 73 written_data().size(), 0u);
74 74
75 // And then close the connection to ConnectionToClient. 75 // And then close the connection to ConnectionToClient.
76 viewer_->Disconnect(); 76 viewer_->Disconnect();
77 77
78 message_loop_.RunAllPending(); 78 message_loop_.RunUntilIdle();
79 } 79 }
80 80
81 TEST_F(ConnectionToClientTest, NoWriteAfterDisconnect) { 81 TEST_F(ConnectionToClientTest, NoWriteAfterDisconnect) {
82 scoped_ptr<VideoPacket> packet(new VideoPacket()); 82 scoped_ptr<VideoPacket> packet(new VideoPacket());
83 viewer_->video_stub()->ProcessVideoPacket(packet.Pass(), base::Closure()); 83 viewer_->video_stub()->ProcessVideoPacket(packet.Pass(), base::Closure());
84 84
85 // And then close the connection to ConnectionToClient. 85 // And then close the connection to ConnectionToClient.
86 viewer_->Disconnect(); 86 viewer_->Disconnect();
87 87
88 // The test will crash if data writer tries to write data to the 88 // The test will crash if data writer tries to write data to the
89 // channel socket. 89 // channel socket.
90 // TODO(sergeyu): Use MockSession to verify that no data is written? 90 // TODO(sergeyu): Use MockSession to verify that no data is written?
91 message_loop_.RunAllPending(); 91 message_loop_.RunUntilIdle();
92 } 92 }
93 93
94 TEST_F(ConnectionToClientTest, StateChange) { 94 TEST_F(ConnectionToClientTest, StateChange) {
95 EXPECT_CALL(handler_, OnConnectionClosed(viewer_.get(), OK)); 95 EXPECT_CALL(handler_, OnConnectionClosed(viewer_.get(), OK));
96 session_->event_handler()->OnSessionStateChange(Session::CLOSED); 96 session_->event_handler()->OnSessionStateChange(Session::CLOSED);
97 message_loop_.RunAllPending(); 97 message_loop_.RunUntilIdle();
98 98
99 EXPECT_CALL(handler_, OnConnectionClosed(viewer_.get(), SESSION_REJECTED)); 99 EXPECT_CALL(handler_, OnConnectionClosed(viewer_.get(), SESSION_REJECTED));
100 session_->set_error(SESSION_REJECTED); 100 session_->set_error(SESSION_REJECTED);
101 session_->event_handler()->OnSessionStateChange(Session::FAILED); 101 session_->event_handler()->OnSessionStateChange(Session::FAILED);
102 message_loop_.RunAllPending(); 102 message_loop_.RunUntilIdle();
103 } 103 }
104 104
105 } // namespace protocol 105 } // namespace protocol
106 } // namespace remoting 106 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/protocol/channel_multiplexer_unittest.cc ('k') | remoting/protocol/jingle_session_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698