OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "mojo/edk/system/handle.h" | 5 #include "mojo/edk/system/handle.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "mojo/edk/system/mock_simple_dispatcher.h" | 9 #include "mojo/edk/system/mock_simple_dispatcher.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 EXPECT_FALSE(h2.dispatcher); | 111 EXPECT_FALSE(h2.dispatcher); |
112 | 112 |
113 EXPECT_EQ(MOJO_RESULT_OK, d->Close()); | 113 EXPECT_EQ(MOJO_RESULT_OK, d->Close()); |
114 } | 114 } |
115 } | 115 } |
116 | 116 |
117 TEST(HandleTest, HasAllRights) { | 117 TEST(HandleTest, HasAllRights) { |
118 { | 118 { |
119 Handle h; | 119 Handle h; |
120 | 120 |
| 121 EXPECT_TRUE(h.has_all_rights(MOJO_HANDLE_RIGHT_NONE)); |
121 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE)); | 122 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE)); |
122 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_TRANSFER)); | 123 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_TRANSFER)); |
123 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_READ)); | 124 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_READ)); |
124 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_WRITE)); | 125 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_WRITE)); |
125 } | 126 } |
126 | 127 |
127 { | 128 { |
128 Handle h(MakeRefCounted<test::MockSimpleDispatcher>(), | 129 Handle h(MakeRefCounted<test::MockSimpleDispatcher>(), |
129 MOJO_HANDLE_RIGHT_DUPLICATE | MOJO_HANDLE_RIGHT_READ); | 130 MOJO_HANDLE_RIGHT_DUPLICATE | MOJO_HANDLE_RIGHT_READ); |
130 | 131 |
| 132 EXPECT_TRUE(h.has_all_rights(MOJO_HANDLE_RIGHT_NONE)); |
131 EXPECT_TRUE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE)); | 133 EXPECT_TRUE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE)); |
132 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_TRANSFER)); | 134 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_TRANSFER)); |
133 EXPECT_TRUE(h.has_all_rights(MOJO_HANDLE_RIGHT_READ)); | 135 EXPECT_TRUE(h.has_all_rights(MOJO_HANDLE_RIGHT_READ)); |
134 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_WRITE)); | 136 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_WRITE)); |
135 | 137 |
136 EXPECT_TRUE( | 138 EXPECT_TRUE( |
137 h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE | MOJO_HANDLE_RIGHT_READ)); | 139 h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE | MOJO_HANDLE_RIGHT_READ)); |
138 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE | | 140 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE | |
139 MOJO_HANDLE_RIGHT_READ | | 141 MOJO_HANDLE_RIGHT_READ | |
140 MOJO_HANDLE_RIGHT_WRITE)); | 142 MOJO_HANDLE_RIGHT_WRITE)); |
141 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE | | 143 EXPECT_FALSE(h.has_all_rights(MOJO_HANDLE_RIGHT_DUPLICATE | |
142 MOJO_HANDLE_RIGHT_WRITE)); | 144 MOJO_HANDLE_RIGHT_WRITE)); |
143 | 145 |
144 EXPECT_EQ(MOJO_RESULT_OK, h.dispatcher->Close()); | 146 EXPECT_EQ(MOJO_RESULT_OK, h.dispatcher->Close()); |
145 } | 147 } |
146 } | 148 } |
147 | 149 |
148 } // namespace | 150 } // namespace |
149 } // namespace system | 151 } // namespace system |
150 } // namespace mojo | 152 } // namespace mojo |
OLD | NEW |