| Index: third_party/mojo/src/mojo/edk/system/channel_endpoint_unittest.cc
|
| diff --git a/third_party/mojo/src/mojo/edk/system/channel_endpoint_unittest.cc b/third_party/mojo/src/mojo/edk/system/channel_endpoint_unittest.cc
|
| deleted file mode 100644
|
| index 4782b62e0cf76d35e23d4d7a24acff1e716907dd..0000000000000000000000000000000000000000
|
| --- a/third_party/mojo/src/mojo/edk/system/channel_endpoint_unittest.cc
|
| +++ /dev/null
|
| @@ -1,139 +0,0 @@
|
| -// Copyright 2015 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 "third_party/mojo/src/mojo/edk/system/channel_endpoint.h"
|
| -
|
| -#include <utility>
|
| -
|
| -#include "base/synchronization/waitable_event.h"
|
| -#include "base/test/test_timeouts.h"
|
| -#include "mojo/public/cpp/system/macros.h"
|
| -#include "third_party/mojo/src/mojo/edk/system/channel_test_base.h"
|
| -#include "third_party/mojo/src/mojo/edk/system/message_in_transit_queue.h"
|
| -#include "third_party/mojo/src/mojo/edk/system/message_in_transit_test_utils.h"
|
| -#include "third_party/mojo/src/mojo/edk/system/test_channel_endpoint_client.h"
|
| -
|
| -namespace mojo {
|
| -namespace system {
|
| -namespace {
|
| -
|
| -class ChannelEndpointTest : public test::ChannelTestBase {
|
| - public:
|
| - ChannelEndpointTest() {}
|
| - ~ChannelEndpointTest() override {}
|
| -
|
| - void SetUp() override {
|
| - test::ChannelTestBase::SetUp();
|
| -
|
| - PostMethodToIOThreadAndWait(
|
| - FROM_HERE, &ChannelEndpointTest::CreateAndInitChannelOnIOThread, 0);
|
| - PostMethodToIOThreadAndWait(
|
| - FROM_HERE, &ChannelEndpointTest::CreateAndInitChannelOnIOThread, 1);
|
| - }
|
| -
|
| - void TearDown() override {
|
| - PostMethodToIOThreadAndWait(
|
| - FROM_HERE, &ChannelEndpointTest::ShutdownChannelOnIOThread, 0);
|
| - PostMethodToIOThreadAndWait(
|
| - FROM_HERE, &ChannelEndpointTest::ShutdownChannelOnIOThread, 1);
|
| -
|
| - test::ChannelTestBase::TearDown();
|
| - }
|
| -
|
| - private:
|
| - MOJO_DISALLOW_COPY_AND_ASSIGN(ChannelEndpointTest);
|
| -};
|
| -
|
| -TEST_F(ChannelEndpointTest, Basic) {
|
| - scoped_refptr<test::TestChannelEndpointClient> client0(
|
| - new test::TestChannelEndpointClient());
|
| - scoped_refptr<ChannelEndpoint> endpoint0(
|
| - new ChannelEndpoint(client0.get(), 0));
|
| - client0->Init(0, endpoint0.get());
|
| - channel(0)->SetBootstrapEndpoint(endpoint0);
|
| -
|
| - scoped_refptr<test::TestChannelEndpointClient> client1(
|
| - new test::TestChannelEndpointClient());
|
| - scoped_refptr<ChannelEndpoint> endpoint1(
|
| - new ChannelEndpoint(client1.get(), 1));
|
| - client1->Init(1, endpoint1.get());
|
| - channel(1)->SetBootstrapEndpoint(endpoint1);
|
| -
|
| - // We'll receive a message on channel/client 0.
|
| - base::WaitableEvent read_event(true, false);
|
| - client0->SetReadEvent(&read_event);
|
| -
|
| - // Make a test message.
|
| - unsigned message_id = 0x12345678;
|
| - scoped_ptr<MessageInTransit> send_message = test::MakeTestMessage(message_id);
|
| - // Check that our test utility works (at least in one direction).
|
| - test::VerifyTestMessage(send_message.get(), message_id);
|
| -
|
| - // Event shouldn't be signalled yet.
|
| - EXPECT_FALSE(read_event.IsSignaled());
|
| -
|
| - // Send it through channel/endpoint 1.
|
| - EXPECT_TRUE(endpoint1->EnqueueMessage(std::move(send_message)));
|
| -
|
| - // Wait to receive it.
|
| - EXPECT_TRUE(read_event.TimedWait(TestTimeouts::tiny_timeout()));
|
| - client0->SetReadEvent(nullptr);
|
| -
|
| - // Check the received message.
|
| - ASSERT_EQ(1u, client0->NumMessages());
|
| - scoped_ptr<MessageInTransit> read_message = client0->PopMessage();
|
| - ASSERT_TRUE(read_message);
|
| - test::VerifyTestMessage(read_message.get(), message_id);
|
| -}
|
| -
|
| -// Checks that prequeued messages and messages sent at various stages later on
|
| -// are all sent/received (and in the correct order). (Note: Due to the way
|
| -// bootstrap endpoints work, the receiving side has to be set up first.)
|
| -TEST_F(ChannelEndpointTest, Prequeued) {
|
| - scoped_refptr<test::TestChannelEndpointClient> client0(
|
| - new test::TestChannelEndpointClient());
|
| - scoped_refptr<ChannelEndpoint> endpoint0(
|
| - new ChannelEndpoint(client0.get(), 0));
|
| - client0->Init(0, endpoint0.get());
|
| -
|
| - channel(0)->SetBootstrapEndpoint(endpoint0);
|
| - MessageInTransitQueue prequeued_messages;
|
| - prequeued_messages.AddMessage(test::MakeTestMessage(1));
|
| - prequeued_messages.AddMessage(test::MakeTestMessage(2));
|
| -
|
| - scoped_refptr<test::TestChannelEndpointClient> client1(
|
| - new test::TestChannelEndpointClient());
|
| - scoped_refptr<ChannelEndpoint> endpoint1(
|
| - new ChannelEndpoint(client1.get(), 1, &prequeued_messages));
|
| - client1->Init(1, endpoint1.get());
|
| -
|
| - EXPECT_TRUE(endpoint1->EnqueueMessage(test::MakeTestMessage(3)));
|
| - EXPECT_TRUE(endpoint1->EnqueueMessage(test::MakeTestMessage(4)));
|
| -
|
| - channel(1)->SetBootstrapEndpoint(endpoint1);
|
| -
|
| - EXPECT_TRUE(endpoint1->EnqueueMessage(test::MakeTestMessage(5)));
|
| - EXPECT_TRUE(endpoint1->EnqueueMessage(test::MakeTestMessage(6)));
|
| -
|
| - // Wait for the messages.
|
| - base::WaitableEvent read_event(true, false);
|
| - client0->SetReadEvent(&read_event);
|
| - for (size_t i = 0; client0->NumMessages() < 6 && i < 6; i++) {
|
| - EXPECT_TRUE(read_event.TimedWait(TestTimeouts::tiny_timeout()));
|
| - read_event.Reset();
|
| - }
|
| - client0->SetReadEvent(nullptr);
|
| -
|
| - // Check the received messages.
|
| - ASSERT_EQ(6u, client0->NumMessages());
|
| - for (unsigned message_id = 1; message_id <= 6; message_id++) {
|
| - scoped_ptr<MessageInTransit> read_message = client0->PopMessage();
|
| - ASSERT_TRUE(read_message);
|
| - test::VerifyTestMessage(read_message.get(), message_id);
|
| - }
|
| -}
|
| -
|
| -} // namespace
|
| -} // namespace system
|
| -} // namespace mojo
|
|
|