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

Unified Diff: mojo/edk/system/core_unittest.cc

Issue 1993283002: Add thunks for MojoGetRights(), etc. (Closed) Base URL: https://github.com/domokit/mojo.git@work795_core_get_rights
Patch Set: I'm an idiot Created 4 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mojo/edk/embedder/system_impl_private_entrypoints.cc ('k') | mojo/nacl/nonsfi/irt_mojo_nonsfi.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/edk/system/core_unittest.cc
diff --git a/mojo/edk/system/core_unittest.cc b/mojo/edk/system/core_unittest.cc
index 745b5af19d03bef4c1708c7aa354a92c860510e1..c91ef7bd370a6b4128110003fe4f4e6e94f3cf9b 100644
--- a/mojo/edk/system/core_unittest.cc
+++ b/mojo/edk/system/core_unittest.cc
@@ -20,6 +20,17 @@ namespace mojo {
namespace system {
namespace {
+const MojoHandleRights kDefaultMessagePipeHandleRights =
+ MOJO_HANDLE_RIGHT_TRANSFER | MOJO_HANDLE_RIGHT_READ |
+ MOJO_HANDLE_RIGHT_WRITE | MOJO_HANDLE_RIGHT_GET_OPTIONS |
+ MOJO_HANDLE_RIGHT_SET_OPTIONS;
+const MojoHandleRights kDefaultDataPipeProducerHandleRights =
+ MOJO_HANDLE_RIGHT_TRANSFER | MOJO_HANDLE_RIGHT_WRITE |
+ MOJO_HANDLE_RIGHT_GET_OPTIONS | MOJO_HANDLE_RIGHT_SET_OPTIONS;
+const MojoHandleRights kDefaultDataPipeConsumerHandleRights =
+ MOJO_HANDLE_RIGHT_TRANSFER | MOJO_HANDLE_RIGHT_READ |
+ MOJO_HANDLE_RIGHT_GET_OPTIONS | MOJO_HANDLE_RIGHT_SET_OPTIONS;
+
const MojoHandleSignalsState kEmptyMojoHandleSignalsState = {0u, 0u};
const MojoHandleSignalsState kFullMojoHandleSignalsState = {~0u, ~0u};
@@ -44,7 +55,7 @@ TEST_F(CoreTest, Basic) {
EXPECT_EQ(1u, info.GetCtorCallCount());
EXPECT_NE(h, MOJO_HANDLE_INVALID);
- MojoHandleRights rights = 0;
+ MojoHandleRights rights = MOJO_HANDLE_RIGHT_NONE;
EXPECT_EQ(MOJO_RESULT_OK, core()->GetRights(h, MakeUserPointer(&rights)));
EXPECT_EQ(kDefaultMockHandleRights, rights);
@@ -210,7 +221,7 @@ TEST_F(CoreTest, InvalidArguments) {
// |GetRights()|:
{
- MojoHandleRights rights = 0;
+ MojoHandleRights rights = MOJO_HANDLE_RIGHT_NONE;
EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
core()->GetRights(MOJO_HANDLE_INVALID, MakeUserPointer(&rights)));
EXPECT_EQ(0u, rights);
@@ -670,16 +681,12 @@ TEST_F(CoreTest, MessagePipe) {
EXPECT_NE(h[0], h[1]);
// Both should have the correct rights.
- static const MojoHandleRights kMessagePipeHandleRights =
- MOJO_HANDLE_RIGHT_TRANSFER | MOJO_HANDLE_RIGHT_READ |
- MOJO_HANDLE_RIGHT_WRITE | MOJO_HANDLE_RIGHT_GET_OPTIONS |
- MOJO_HANDLE_RIGHT_SET_OPTIONS;
MojoHandleRights rights = MOJO_HANDLE_RIGHT_NONE;
EXPECT_EQ(MOJO_RESULT_OK, core()->GetRights(h[0], MakeUserPointer(&rights)));
- EXPECT_EQ(kMessagePipeHandleRights, rights);
+ EXPECT_EQ(kDefaultMessagePipeHandleRights, rights);
rights = MOJO_HANDLE_RIGHT_NONE;
EXPECT_EQ(MOJO_RESULT_OK, core()->GetRights(h[1], MakeUserPointer(&rights)));
- EXPECT_EQ(kMessagePipeHandleRights, rights);
+ EXPECT_EQ(kDefaultMessagePipeHandleRights, rights);
// Neither should be readable.
MojoHandleSignals signals[2] = {MOJO_HANDLE_SIGNAL_READABLE,
@@ -981,6 +988,12 @@ TEST_F(CoreTest, MessagePipeBasicLocalHandlePassing1) {
// fails. See above note.
EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, core()->Close(h_passed[1]));
+ // Check that |h_received| still has the expected rights.
+ MojoHandleRights rights = MOJO_HANDLE_RIGHT_NONE;
+ EXPECT_EQ(MOJO_RESULT_OK,
+ core()->GetRights(h_received, MakeUserPointer(&rights)));
+ EXPECT_EQ(kDefaultMessagePipeHandleRights, rights);
+
// Write to |h_passed[0]|. Should receive on |h_received|.
EXPECT_EQ(MOJO_RESULT_OK,
core()->WriteMessage(h_passed[0], UserPointer<const void>(kHello),
@@ -1027,18 +1040,12 @@ TEST_F(CoreTest, DataPipe) {
EXPECT_NE(ph, ch);
// Both should have the correct rights.
- static const MojoHandleRights kDataPipeProducerHandleRights =
- MOJO_HANDLE_RIGHT_TRANSFER | MOJO_HANDLE_RIGHT_WRITE |
- MOJO_HANDLE_RIGHT_GET_OPTIONS | MOJO_HANDLE_RIGHT_SET_OPTIONS;
- static const MojoHandleRights kDataPipeConsumerHandleRights =
- MOJO_HANDLE_RIGHT_TRANSFER | MOJO_HANDLE_RIGHT_READ |
- MOJO_HANDLE_RIGHT_GET_OPTIONS | MOJO_HANDLE_RIGHT_SET_OPTIONS;
MojoHandleRights rights = MOJO_HANDLE_RIGHT_NONE;
EXPECT_EQ(MOJO_RESULT_OK, core()->GetRights(ph, MakeUserPointer(&rights)));
- EXPECT_EQ(kDataPipeProducerHandleRights, rights);
+ EXPECT_EQ(kDefaultDataPipeProducerHandleRights, rights);
rights = MOJO_HANDLE_RIGHT_NONE;
EXPECT_EQ(MOJO_RESULT_OK, core()->GetRights(ch, MakeUserPointer(&rights)));
- EXPECT_EQ(kDataPipeConsumerHandleRights, rights);
+ EXPECT_EQ(kDefaultDataPipeConsumerHandleRights, rights);
// Producer should be never-readable, but already writable.
hss = kEmptyMojoHandleSignalsState;
@@ -1464,6 +1471,12 @@ TEST_F(CoreTest, MessagePipeBasicLocalHandlePassing2) {
// above note.
EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, core()->Close(ch));
+ // Check that |ch_received| still has the expected rights.
+ MojoHandleRights rights = MOJO_HANDLE_RIGHT_NONE;
+ EXPECT_EQ(MOJO_RESULT_OK,
+ core()->GetRights(ch_received, MakeUserPointer(&rights)));
+ EXPECT_EQ(kDefaultDataPipeConsumerHandleRights, rights);
+
// Write to |ph|. Should receive on |ch_received|.
num_bytes = kWorldSize;
EXPECT_EQ(MOJO_RESULT_OK,
@@ -1524,6 +1537,12 @@ TEST_F(CoreTest, MessagePipeBasicLocalHandlePassing2) {
// above note.
EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, core()->Close(ph));
+ // Check that |ph_received| still has the expected rights.
+ rights = MOJO_HANDLE_RIGHT_NONE;
+ EXPECT_EQ(MOJO_RESULT_OK,
+ core()->GetRights(ph_received, MakeUserPointer(&rights)));
+ EXPECT_EQ(kDefaultDataPipeProducerHandleRights, rights);
+
// Write to |ph_received|. Should receive on |ch_received|.
num_bytes = kHelloSize;
EXPECT_EQ(MOJO_RESULT_OK,
« no previous file with comments | « mojo/edk/embedder/system_impl_private_entrypoints.cc ('k') | mojo/nacl/nonsfi/irt_mojo_nonsfi.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698