| Index: ipc/ipc_message_utils_unittest.cc
|
| diff --git a/ipc/ipc_message_utils_unittest.cc b/ipc/ipc_message_utils_unittest.cc
|
| index 4561c2e5cb9380b8139cd03ae75e2cb59ed52531..5b16c4d0bcc9cb5b3ee0d218c10e0182515c3cef 100644
|
| --- a/ipc/ipc_message_utils_unittest.cc
|
| +++ b/ipc/ipc_message_utils_unittest.cc
|
| @@ -11,6 +11,7 @@
|
| #include "base/files/file_path.h"
|
| #include "base/json/json_reader.h"
|
| #include "base/memory/ptr_util.h"
|
| +#include "base/memory/shared_memory.h"
|
| #include "base/unguessable_token.h"
|
| #include "ipc/ipc_channel_handle.h"
|
| #include "ipc/ipc_message.h"
|
| @@ -195,6 +196,25 @@ TEST(IPCMessageUtilsTest, OptionalSet) {
|
| EXPECT_EQ(opt.value(), unserialized_opt.value());
|
| }
|
|
|
| +TEST(IPCMessageUtilsTest, SharedMemoryHandle) {
|
| + base::SharedMemoryCreateOptions options;
|
| + options.size = 1004;
|
| + base::SharedMemory shmem;
|
| + ASSERT_TRUE(shmem.Create(options));
|
| +
|
| + base::SharedMemoryHandle pre_pickle = shmem.handle().Duplicate();
|
| + ASSERT_TRUE(pre_pickle.IsValid());
|
| +
|
| + IPC::Message message;
|
| + IPC::WriteParam(&message, pre_pickle);
|
| +
|
| + base::SharedMemoryHandle post_pickle;
|
| + base::PickleIterator iter(message);
|
| + EXPECT_TRUE(IPC::ReadParam(&message, &iter, &post_pickle));
|
| + EXPECT_EQ(pre_pickle.GetGUID(), post_pickle.GetGUID());
|
| + EXPECT_EQ(pre_pickle.GetSize(), post_pickle.GetSize());
|
| +}
|
| +
|
| TEST(IPCMessageUtilsTest, UnguessableTokenTest) {
|
| base::UnguessableToken token = base::UnguessableToken::Create();
|
| base::Pickle pickle;
|
|
|