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

Side by Side Diff: mojo/embedder/embedder_unittest.cc

Issue 231353002: Make mojo_system static and mojo_system_impl a component, never use both (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Cleanup Created 6 years, 8 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "mojo/embedder/embedder.h" 5 #include "mojo/embedder/embedder.h"
6 6
7 #include <string.h> 7 #include <string.h>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/location.h" 10 #include "base/location.h"
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 protected: 104 protected:
105 system::test::TestIOThread* test_io_thread() { return &test_io_thread_; } 105 system::test::TestIOThread* test_io_thread() { return &test_io_thread_; }
106 106
107 private: 107 private:
108 system::test::TestIOThread test_io_thread_; 108 system::test::TestIOThread test_io_thread_;
109 109
110 DISALLOW_COPY_AND_ASSIGN(EmbedderTest); 110 DISALLOW_COPY_AND_ASSIGN(EmbedderTest);
111 }; 111 };
112 112
113 TEST_F(EmbedderTest, ChannelsBasic) { 113 TEST_F(EmbedderTest, ChannelsBasic) {
114 Init();
115
116 { 114 {
117 PlatformChannelPair channel_pair; 115 PlatformChannelPair channel_pair;
118 ScopedTestChannel server_channel(test_io_thread()->task_runner(), 116 ScopedTestChannel server_channel(test_io_thread()->task_runner(),
119 channel_pair.PassServerHandle()); 117 channel_pair.PassServerHandle());
120 MojoHandle server_mp = server_channel.bootstrap_message_pipe(); 118 MojoHandle server_mp = server_channel.bootstrap_message_pipe();
121 EXPECT_NE(server_mp, MOJO_HANDLE_INVALID); 119 EXPECT_NE(server_mp, MOJO_HANDLE_INVALID);
122 ScopedTestChannel client_channel(test_io_thread()->task_runner(), 120 ScopedTestChannel client_channel(test_io_thread()->task_runner(),
123 channel_pair.PassClientHandle()); 121 channel_pair.PassClientHandle());
124 MojoHandle client_mp = client_channel.bootstrap_message_pipe(); 122 MojoHandle client_mp = client_channel.bootstrap_message_pipe();
125 EXPECT_NE(client_mp, MOJO_HANDLE_INVALID); 123 EXPECT_NE(client_mp, MOJO_HANDLE_INVALID);
(...skipping 27 matching lines...) Expand all
153 server_channel.WaitForChannelCreationCompletion(); 151 server_channel.WaitForChannelCreationCompletion();
154 client_channel.WaitForChannelCreationCompletion(); 152 client_channel.WaitForChannelCreationCompletion();
155 EXPECT_TRUE(server_channel.channel_info() != NULL); 153 EXPECT_TRUE(server_channel.channel_info() != NULL);
156 EXPECT_TRUE(client_channel.channel_info() != NULL); 154 EXPECT_TRUE(client_channel.channel_info() != NULL);
157 } 155 }
158 156
159 EXPECT_TRUE(test::Shutdown()); 157 EXPECT_TRUE(test::Shutdown());
160 } 158 }
161 159
162 TEST_F(EmbedderTest, ChannelsHandlePassing) { 160 TEST_F(EmbedderTest, ChannelsHandlePassing) {
163 Init();
164
165 { 161 {
166 PlatformChannelPair channel_pair; 162 PlatformChannelPair channel_pair;
167 ScopedTestChannel server_channel(test_io_thread()->task_runner(), 163 ScopedTestChannel server_channel(test_io_thread()->task_runner(),
168 channel_pair.PassServerHandle()); 164 channel_pair.PassServerHandle());
169 MojoHandle server_mp = server_channel.bootstrap_message_pipe(); 165 MojoHandle server_mp = server_channel.bootstrap_message_pipe();
170 EXPECT_NE(server_mp, MOJO_HANDLE_INVALID); 166 EXPECT_NE(server_mp, MOJO_HANDLE_INVALID);
171 ScopedTestChannel client_channel(test_io_thread()->task_runner(), 167 ScopedTestChannel client_channel(test_io_thread()->task_runner(),
172 channel_pair.PassClientHandle()); 168 channel_pair.PassClientHandle());
173 MojoHandle client_mp = client_channel.bootstrap_message_pipe(); 169 MojoHandle client_mp = client_channel.bootstrap_message_pipe();
174 EXPECT_NE(client_mp, MOJO_HANDLE_INVALID); 170 EXPECT_NE(client_mp, MOJO_HANDLE_INVALID);
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 // 4. "Bar"+mp1 284 // 4. "Bar"+mp1
289 // 5. (close) 285 // 5. (close)
290 // 6. (close) 286 // 6. (close)
291 // 7. "baz" 287 // 7. "baz"
292 // 8. (closed) 288 // 8. (closed)
293 // 9. "quux"+mp2 289 // 9. "quux"+mp2
294 // 10. (close) 290 // 10. (close)
295 // 11. (wait/cl.) 291 // 11. (wait/cl.)
296 // 12. (wait/cl.) 292 // 12. (wait/cl.)
297 TEST_F(EmbedderTest, MultiprocessChannels) { 293 TEST_F(EmbedderTest, MultiprocessChannels) {
298 Init();
299 mojo::test::MultiprocessTestHelper multiprocess_test_helper; 294 mojo::test::MultiprocessTestHelper multiprocess_test_helper;
300 multiprocess_test_helper.StartChild("MultiprocessChannelsClient"); 295 multiprocess_test_helper.StartChild("MultiprocessChannelsClient");
301 296
302 { 297 {
303 ScopedTestChannel server_channel( 298 ScopedTestChannel server_channel(
304 test_io_thread()->task_runner(), 299 test_io_thread()->task_runner(),
305 multiprocess_test_helper.server_platform_handle.Pass()); 300 multiprocess_test_helper.server_platform_handle.Pass());
306 MojoHandle server_mp = server_channel.bootstrap_message_pipe(); 301 MojoHandle server_mp = server_channel.bootstrap_message_pipe();
307 EXPECT_NE(server_mp, MOJO_HANDLE_INVALID); 302 EXPECT_NE(server_mp, MOJO_HANDLE_INVALID);
308 server_channel.WaitForChannelCreationCompletion(); 303 server_channel.WaitForChannelCreationCompletion();
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
397 EXPECT_TRUE(test::Shutdown()); 392 EXPECT_TRUE(test::Shutdown());
398 } 393 }
399 394
400 MOJO_MULTIPROCESS_TEST_CHILD_TEST(MultiprocessChannelsClient) { 395 MOJO_MULTIPROCESS_TEST_CHILD_TEST(MultiprocessChannelsClient) {
401 embedder::ScopedPlatformHandle client_platform_handle = 396 embedder::ScopedPlatformHandle client_platform_handle =
402 mojo::test::MultiprocessTestHelper::client_platform_handle.Pass(); 397 mojo::test::MultiprocessTestHelper::client_platform_handle.Pass();
403 EXPECT_TRUE(client_platform_handle.is_valid()); 398 EXPECT_TRUE(client_platform_handle.is_valid());
404 399
405 system::test::TestIOThread 400 system::test::TestIOThread
406 test_io_thread(system::test::TestIOThread::kAutoStart); 401 test_io_thread(system::test::TestIOThread::kAutoStart);
407 Init();
408 402
409 { 403 {
410 ScopedTestChannel client_channel(test_io_thread.task_runner(), 404 ScopedTestChannel client_channel(test_io_thread.task_runner(),
411 client_platform_handle.Pass()); 405 client_platform_handle.Pass());
412 MojoHandle client_mp = client_channel.bootstrap_message_pipe(); 406 MojoHandle client_mp = client_channel.bootstrap_message_pipe();
413 EXPECT_NE(client_mp, MOJO_HANDLE_INVALID); 407 EXPECT_NE(client_mp, MOJO_HANDLE_INVALID);
414 client_channel.WaitForChannelCreationCompletion(); 408 client_channel.WaitForChannelCreationCompletion();
415 CHECK(client_channel.channel_info() != NULL); 409 CHECK(client_channel.channel_info() != NULL);
416 410
417 // 1. Read the first message from |client_mp|. 411 // 1. Read the first message from |client_mp|.
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
501 495
502 EXPECT_TRUE(test::Shutdown()); 496 EXPECT_TRUE(test::Shutdown());
503 } 497 }
504 498
505 // TODO(vtl): Test immediate write & close. 499 // TODO(vtl): Test immediate write & close.
506 // TODO(vtl): Test broken-connection cases. 500 // TODO(vtl): Test broken-connection cases.
507 501
508 } // namespace 502 } // namespace
509 } // namespace embedder 503 } // namespace embedder
510 } // namespace mojo 504 } // namespace mojo
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698