Index: mojo/system/embedder_unittest.cc |
diff --git a/mojo/system/embedder_unittest.cc b/mojo/system/embedder_unittest.cc |
deleted file mode 100644 |
index 3f876eb7ca4157a12c89e86560aca57f2d8c6616..0000000000000000000000000000000000000000 |
--- a/mojo/system/embedder_unittest.cc |
+++ /dev/null |
@@ -1,102 +0,0 @@ |
-// Copyright 2014 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "mojo/system/embedder.h" |
- |
-#include <string.h> |
- |
-#include "base/bind.h" |
-#include "base/location.h" |
-#include "base/logging.h" |
-// TODO(vtl): Remove build_config.h include when fully implemented on Windows. |
-#include "build/build_config.h" |
-#include "mojo/public/system/core.h" |
-#include "mojo/system/platform_channel_pair.h" |
-#include "mojo/system/test_embedder.h" |
-#include "mojo/system/test_utils.h" |
- |
-namespace mojo { |
-namespace embedder { |
-namespace { |
- |
-typedef system::test::TestWithIOThreadBase EmbedderTest; |
- |
-void StoreChannelInfo(ChannelInfo** store_channel_info_here, |
- ChannelInfo* channel_info) { |
- CHECK(store_channel_info_here); |
- CHECK(channel_info); |
- *store_channel_info_here = channel_info; |
-} |
- |
-TEST_F(EmbedderTest, ChannelsBasic) { |
- Init(); |
- |
-// TODO(vtl): |PlatformChannelPair| not implemented on Windows yet. |
-#if !defined(OS_WIN) |
- PlatformChannelPair channel_pair; |
- ScopedPlatformHandle server_handle = channel_pair.PassServerHandle(); |
- ScopedPlatformHandle client_handle = channel_pair.PassClientHandle(); |
- |
- ChannelInfo* server_channel_info = NULL; |
- MojoHandle server_mp = CreateChannel(server_handle.Pass(), |
- io_thread_task_runner(), |
- base::Bind(&StoreChannelInfo, |
- &server_channel_info)); |
- EXPECT_NE(server_mp, MOJO_HANDLE_INVALID); |
- |
- ChannelInfo* client_channel_info = NULL; |
- MojoHandle client_mp = CreateChannel(client_handle.Pass(), |
- io_thread_task_runner(), |
- base::Bind(&StoreChannelInfo, |
- &client_channel_info)); |
- EXPECT_NE(client_mp, MOJO_HANDLE_INVALID); |
- |
- // We can write to a message pipe handle immediately. |
- const char kHello[] = "hello"; |
- EXPECT_EQ(MOJO_RESULT_OK, |
- MojoWriteMessage(server_mp, kHello, |
- static_cast<uint32_t>(sizeof(kHello)), NULL, 0u, |
- MOJO_WRITE_MESSAGE_FLAG_NONE)); |
- |
- // Now wait for the other side to become readable. |
- EXPECT_EQ(MOJO_RESULT_OK, |
- MojoWait(client_mp, MOJO_WAIT_FLAG_READABLE, |
- MOJO_DEADLINE_INDEFINITE)); |
- |
- char buffer[1000] = {}; |
- uint32_t num_bytes = static_cast<uint32_t>(sizeof(kHello)); |
- EXPECT_EQ(MOJO_RESULT_OK, |
- MojoReadMessage(client_mp, buffer, &num_bytes, NULL, NULL, |
- MOJO_READ_MESSAGE_FLAG_NONE)); |
- EXPECT_EQ(sizeof(kHello), num_bytes); |
- EXPECT_EQ(0, memcmp(buffer, kHello, num_bytes)); |
- |
- // TODO(vtl): FIXME -- This rapid-fire closing leads to a warning: "Received a |
- // message for nonexistent local destination ID 1". This is due to a race |
- // condition (in channel.cc/message_pipe.cc). |
- EXPECT_EQ(MOJO_RESULT_OK, MojoClose(server_mp)); |
- EXPECT_EQ(MOJO_RESULT_OK, MojoClose(client_mp)); |
- |
- EXPECT_TRUE(server_channel_info != NULL); |
- system::test::PostTaskAndWait(io_thread_task_runner(), |
- FROM_HERE, |
- base::Bind(&DestroyChannelOnIOThread, |
- server_channel_info)); |
- |
- EXPECT_TRUE(client_channel_info != NULL); |
- system::test::PostTaskAndWait(io_thread_task_runner(), |
- FROM_HERE, |
- base::Bind(&DestroyChannelOnIOThread, |
- client_channel_info)); |
-#endif // !defined(OS_WIN) |
- |
- test::Shutdown(); |
-} |
- |
-// TODO(vtl): Test immediate write & close. |
-// TODO(vtl): Test broken-connection cases. |
- |
-} // namespace |
-} // namespace embedder |
-} // namespace mojo |