| Index: mojo/edk/embedder/embedder_unittest.cc
|
| diff --git a/mojo/edk/embedder/embedder_unittest.cc b/mojo/edk/embedder/embedder_unittest.cc
|
| index 78423d2c5b69ccac1d241eb6f6291a935e3a89ce..5c4d0d80fbc296f0218a6ee03c427aef55039d7a 100644
|
| --- a/mojo/edk/embedder/embedder_unittest.cc
|
| +++ b/mojo/edk/embedder/embedder_unittest.cc
|
| @@ -39,7 +39,8 @@
|
| did_create_channel_event_(true, false),
|
| channel_info_(nullptr) {
|
| bootstrap_message_pipe_ =
|
| - CreateChannel(platform_handle.Pass(), io_thread_task_runner_,
|
| + CreateChannel(platform_handle.Pass(),
|
| + io_thread_task_runner_,
|
| base::Bind(&ScopedTestChannel::DidCreateChannel,
|
| base::Unretained(this)),
|
| nullptr)
|
| @@ -52,7 +53,8 @@
|
| // the I/O thread must be alive and pumping messages.)
|
| ~ScopedTestChannel() {
|
| system::test::PostTaskAndWait(
|
| - io_thread_task_runner_, FROM_HERE,
|
| + io_thread_task_runner_,
|
| + FROM_HERE,
|
| base::Bind(&ScopedTestChannel::DestroyChannel, base::Unretained(this)));
|
| }
|
|
|
| @@ -128,18 +130,27 @@
|
| // 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)), nullptr,
|
| - 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + MojoWriteMessage(server_mp,
|
| + kHello,
|
| + static_cast<uint32_t>(sizeof(kHello)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // Now wait for the other side to become readable.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(client_mp, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(
|
| + client_mp, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
|
|
| char buffer[1000] = {};
|
| uint32_t num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(client_mp, buffer, &num_bytes, nullptr, nullptr,
|
| + MojoReadMessage(client_mp,
|
| + buffer,
|
| + &num_bytes,
|
| + nullptr,
|
| + nullptr,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| EXPECT_EQ(sizeof(kHello), num_bytes);
|
| EXPECT_STREQ(kHello, buffer);
|
| @@ -178,28 +189,40 @@
|
|
|
| // Write a message to |h0| (attaching nothing).
|
| const char kHello[] = "hello";
|
| - EXPECT_EQ(
|
| - MOJO_RESULT_OK,
|
| - MojoWriteMessage(h0, kHello, static_cast<uint32_t>(sizeof(kHello)),
|
| - nullptr, 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + EXPECT_EQ(MOJO_RESULT_OK,
|
| + MojoWriteMessage(h0,
|
| + kHello,
|
| + static_cast<uint32_t>(sizeof(kHello)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // Write one message to |server_mp|, attaching |h1|.
|
| const char kWorld[] = "world!!!";
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoWriteMessage(server_mp, kWorld,
|
| - static_cast<uint32_t>(sizeof(kWorld)), &h1, 1,
|
| + MojoWriteMessage(server_mp,
|
| + kWorld,
|
| + static_cast<uint32_t>(sizeof(kWorld)),
|
| + &h1,
|
| + 1,
|
| MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| h1 = MOJO_HANDLE_INVALID;
|
|
|
| // Write another message to |h0|.
|
| const char kFoo[] = "foo";
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoWriteMessage(h0, kFoo, static_cast<uint32_t>(sizeof(kFoo)),
|
| - nullptr, 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + MojoWriteMessage(h0,
|
| + kFoo,
|
| + static_cast<uint32_t>(sizeof(kFoo)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // Wait for |client_mp| to become readable.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(client_mp, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(
|
| + client_mp, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
|
|
| // Read a message from |client_mp|.
|
| char buffer[1000] = {};
|
| @@ -207,8 +230,12 @@
|
| MojoHandle handles[10] = {};
|
| uint32_t num_handles = arraysize(handles);
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(client_mp, buffer, &num_bytes, handles,
|
| - &num_handles, MOJO_READ_MESSAGE_FLAG_NONE));
|
| + MojoReadMessage(client_mp,
|
| + buffer,
|
| + &num_bytes,
|
| + handles,
|
| + &num_handles,
|
| + MOJO_READ_MESSAGE_FLAG_NONE));
|
| EXPECT_EQ(sizeof(kWorld), num_bytes);
|
| EXPECT_STREQ(kWorld, buffer);
|
| EXPECT_EQ(1u, num_handles);
|
| @@ -216,8 +243,9 @@
|
| h1 = handles[0];
|
|
|
| // Wait for |h1| to become readable.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(h1, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(h1, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
|
|
| // Read a message from |h1|.
|
| memset(buffer, 0, sizeof(buffer));
|
| @@ -225,41 +253,58 @@
|
| memset(handles, 0, sizeof(handles));
|
| num_handles = arraysize(handles);
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(h1, buffer, &num_bytes, handles, &num_handles,
|
| + MojoReadMessage(h1,
|
| + buffer,
|
| + &num_bytes,
|
| + handles,
|
| + &num_handles,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| EXPECT_EQ(sizeof(kHello), num_bytes);
|
| EXPECT_STREQ(kHello, buffer);
|
| EXPECT_EQ(0u, num_handles);
|
|
|
| // Wait for |h1| to become readable (again).
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(h1, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(h1, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
|
|
| // Read the second message from |h1|.
|
| memset(buffer, 0, sizeof(buffer));
|
| num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(h1, buffer, &num_bytes, nullptr, nullptr,
|
| + MojoReadMessage(h1,
|
| + buffer,
|
| + &num_bytes,
|
| + nullptr,
|
| + nullptr,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| EXPECT_EQ(sizeof(kFoo), num_bytes);
|
| EXPECT_STREQ(kFoo, buffer);
|
|
|
| // Write a message to |h1|.
|
| const char kBarBaz[] = "barbaz";
|
| - EXPECT_EQ(
|
| - MOJO_RESULT_OK,
|
| - MojoWriteMessage(h1, kBarBaz, static_cast<uint32_t>(sizeof(kBarBaz)),
|
| - nullptr, 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + EXPECT_EQ(MOJO_RESULT_OK,
|
| + MojoWriteMessage(h1,
|
| + kBarBaz,
|
| + static_cast<uint32_t>(sizeof(kBarBaz)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // Wait for |h0| to become readable.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(h0, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(h0, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
|
|
| // Read a message from |h0|.
|
| memset(buffer, 0, sizeof(buffer));
|
| num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(h0, buffer, &num_bytes, nullptr, nullptr,
|
| + MojoReadMessage(h0,
|
| + buffer,
|
| + &num_bytes,
|
| + nullptr,
|
| + nullptr,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| EXPECT_EQ(sizeof(kBarBaz), num_bytes);
|
| EXPECT_STREQ(kBarBaz, buffer);
|
| @@ -309,20 +354,29 @@
|
| // 1. Write a message to |server_mp| (attaching nothing).
|
| const char kHello[] = "hello";
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoWriteMessage(server_mp, kHello,
|
| - static_cast<uint32_t>(sizeof(kHello)), nullptr,
|
| - 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + MojoWriteMessage(server_mp,
|
| + kHello,
|
| + static_cast<uint32_t>(sizeof(kHello)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // TODO(vtl): If the scope were ended immediately here (maybe after closing
|
| // |server_mp|), we die with a fatal error in |Channel::HandleLocalError()|.
|
|
|
| // 2. Read a message from |server_mp|.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(server_mp, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(
|
| + server_mp, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
| char buffer[1000] = {};
|
| uint32_t num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(server_mp, buffer, &num_bytes, nullptr, nullptr,
|
| + MojoReadMessage(server_mp,
|
| + buffer,
|
| + &num_bytes,
|
| + nullptr,
|
| + nullptr,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| const char kWorld[] = "world!";
|
| EXPECT_EQ(sizeof(kWorld), num_bytes);
|
| @@ -335,29 +389,41 @@
|
| // 3. Write something to |mp0|.
|
| const char kFoo[] = "FOO";
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoWriteMessage(mp0, kFoo, static_cast<uint32_t>(sizeof(kFoo)),
|
| - nullptr, 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + MojoWriteMessage(mp0,
|
| + kFoo,
|
| + static_cast<uint32_t>(sizeof(kFoo)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // 4. Write a message to |server_mp|, attaching |mp1|.
|
| const char kBar[] = "Bar";
|
| - EXPECT_EQ(
|
| - MOJO_RESULT_OK,
|
| - MojoWriteMessage(server_mp, kBar, static_cast<uint32_t>(sizeof(kBar)),
|
| - &mp1, 1, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + EXPECT_EQ(MOJO_RESULT_OK,
|
| + MojoWriteMessage(server_mp,
|
| + kBar,
|
| + static_cast<uint32_t>(sizeof(kBar)),
|
| + &mp1,
|
| + 1,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| mp1 = MOJO_HANDLE_INVALID;
|
|
|
| // 5. Close |server_mp|.
|
| EXPECT_EQ(MOJO_RESULT_OK, MojoClose(server_mp));
|
|
|
| // 9. Read a message from |mp0|, which should have |mp2| attached.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(mp0, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(mp0, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
| memset(buffer, 0, sizeof(buffer));
|
| num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| MojoHandle mp2 = MOJO_HANDLE_INVALID;
|
| uint32_t num_handles = 1;
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(mp0, buffer, &num_bytes, &mp2, &num_handles,
|
| + MojoReadMessage(mp0,
|
| + buffer,
|
| + &num_bytes,
|
| + &mp2,
|
| + &num_handles,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| const char kQuux[] = "quux";
|
| EXPECT_EQ(sizeof(kQuux), num_bytes);
|
| @@ -366,12 +432,17 @@
|
| EXPECT_NE(mp2, MOJO_HANDLE_INVALID);
|
|
|
| // 7. Read a message from |mp2|.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(mp2, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(mp2, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
| memset(buffer, 0, sizeof(buffer));
|
| num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(mp2, buffer, &num_bytes, nullptr, nullptr,
|
| + MojoReadMessage(mp2,
|
| + buffer,
|
| + &num_bytes,
|
| + nullptr,
|
| + nullptr,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| const char kBaz[] = "baz";
|
| EXPECT_EQ(sizeof(kBaz), num_bytes);
|
| @@ -411,12 +482,18 @@
|
| CHECK(client_channel.channel_info() != nullptr);
|
|
|
| // 1. Read the first message from |client_mp|.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(client_mp, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(
|
| + client_mp, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
| char buffer[1000] = {};
|
| uint32_t num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(client_mp, buffer, &num_bytes, nullptr, nullptr,
|
| + MojoReadMessage(client_mp,
|
| + buffer,
|
| + &num_bytes,
|
| + nullptr,
|
| + nullptr,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| const char kHello[] = "hello";
|
| EXPECT_EQ(sizeof(kHello), num_bytes);
|
| @@ -425,13 +502,18 @@
|
| // 2. Write a message to |client_mp| (attaching nothing).
|
| const char kWorld[] = "world!";
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoWriteMessage(client_mp, kWorld,
|
| - static_cast<uint32_t>(sizeof(kWorld)), nullptr,
|
| - 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + MojoWriteMessage(client_mp,
|
| + kWorld,
|
| + static_cast<uint32_t>(sizeof(kWorld)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // 4. Read a message from |client_mp|, which should have |mp1| attached.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(client_mp, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(
|
| + client_mp, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
| // TODO(vtl): If the scope were to end here (and |client_mp| closed), we'd
|
| // die (again due to |Channel::HandleLocalError()|).
|
| memset(buffer, 0, sizeof(buffer));
|
| @@ -439,7 +521,11 @@
|
| MojoHandle mp1 = MOJO_HANDLE_INVALID;
|
| uint32_t num_handles = 1;
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(client_mp, buffer, &num_bytes, &mp1, &num_handles,
|
| + MojoReadMessage(client_mp,
|
| + buffer,
|
| + &num_bytes,
|
| + &mp1,
|
| + &num_handles,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| const char kBar[] = "Bar";
|
| EXPECT_EQ(sizeof(kBar), num_bytes);
|
| @@ -460,8 +546,12 @@
|
| // 7. Write a message to |mp3|.
|
| const char kBaz[] = "baz";
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoWriteMessage(mp3, kBaz, static_cast<uint32_t>(sizeof(kBaz)),
|
| - nullptr, 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + MojoWriteMessage(mp3,
|
| + kBaz,
|
| + static_cast<uint32_t>(sizeof(kBaz)),
|
| + nullptr,
|
| + 0,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
|
|
| // 8. Close |mp3|.
|
| EXPECT_EQ(MOJO_RESULT_OK, MojoClose(mp3));
|
| @@ -469,17 +559,26 @@
|
| // 9. Write a message to |mp1|, attaching |mp2|.
|
| const char kQuux[] = "quux";
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoWriteMessage(mp1, kQuux, static_cast<uint32_t>(sizeof(kQuux)),
|
| - &mp2, 1, MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| + MojoWriteMessage(mp1,
|
| + kQuux,
|
| + static_cast<uint32_t>(sizeof(kQuux)),
|
| + &mp2,
|
| + 1,
|
| + MOJO_WRITE_MESSAGE_FLAG_NONE));
|
| mp2 = MOJO_HANDLE_INVALID;
|
|
|
| // 3. Read a message from |mp1|.
|
| - EXPECT_EQ(MOJO_RESULT_OK, MojoWait(mp1, MOJO_HANDLE_SIGNAL_READABLE,
|
| - MOJO_DEADLINE_INDEFINITE));
|
| + EXPECT_EQ(
|
| + MOJO_RESULT_OK,
|
| + MojoWait(mp1, MOJO_HANDLE_SIGNAL_READABLE, MOJO_DEADLINE_INDEFINITE));
|
| memset(buffer, 0, sizeof(buffer));
|
| num_bytes = static_cast<uint32_t>(sizeof(buffer));
|
| EXPECT_EQ(MOJO_RESULT_OK,
|
| - MojoReadMessage(mp1, buffer, &num_bytes, nullptr, nullptr,
|
| + MojoReadMessage(mp1,
|
| + buffer,
|
| + &num_bytes,
|
| + nullptr,
|
| + nullptr,
|
| MOJO_READ_MESSAGE_FLAG_NONE));
|
| const char kFoo[] = "FOO";
|
| EXPECT_EQ(sizeof(kFoo), num_bytes);
|
|
|