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

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

Issue 1778753002: Implement MojoGetBufferInformation(), part 3. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 9 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
Index: mojo/edk/system/shared_buffer_dispatcher_unittest.cc
diff --git a/mojo/edk/system/shared_buffer_dispatcher_unittest.cc b/mojo/edk/system/shared_buffer_dispatcher_unittest.cc
index a9fd4f43946c0605de53a95da9532d031abf093f..b0cc9a4654d93264bb79abe42306962b91a9a3b1 100644
--- a/mojo/edk/system/shared_buffer_dispatcher_unittest.cc
+++ b/mojo/edk/system/shared_buffer_dispatcher_unittest.cc
@@ -184,16 +184,19 @@ TEST_F(SharedBufferDispatcherTest, CreateAndMapBuffer) {
}
TEST_F(SharedBufferDispatcherTest, DuplicateBufferHandle) {
+ const uint64_t kSize = 100u;
+
MojoResult result = MOJO_RESULT_INTERNAL;
auto dispatcher1 = SharedBufferDispatcher::Create(
- platform_support(), SharedBufferDispatcher::kDefaultCreateOptions, 100,
+ platform_support(), SharedBufferDispatcher::kDefaultCreateOptions, kSize,
&result);
EXPECT_EQ(MOJO_RESULT_OK, result);
// Map and write something.
std::unique_ptr<PlatformSharedBufferMapping> mapping;
- EXPECT_EQ(MOJO_RESULT_OK, dispatcher1->MapBuffer(
- 0, 100, MOJO_MAP_BUFFER_FLAG_NONE, &mapping));
+ EXPECT_EQ(
+ MOJO_RESULT_OK,
+ dispatcher1->MapBuffer(0u, kSize, MOJO_MAP_BUFFER_FLAG_NONE, &mapping));
static_cast<char*>(mapping->GetBase())[0] = 'x';
mapping.reset();
@@ -206,9 +209,19 @@ TEST_F(SharedBufferDispatcherTest, DuplicateBufferHandle) {
EXPECT_EQ(MOJO_RESULT_OK, dispatcher1->Close());
+ // Make sure that |dispatcher2| still reports the right information.
+ MojoBufferInformation info = {};
+ EXPECT_EQ(MOJO_RESULT_OK,
+ dispatcher2->GetBufferInformation(
+ MakeUserPointer(&info), static_cast<uint32_t>(sizeof(info))));
+ EXPECT_EQ(sizeof(MojoBufferInformation), info.struct_size);
+ EXPECT_EQ(MOJO_BUFFER_INFORMATION_FLAG_NONE, info.flags);
+ EXPECT_EQ(kSize, info.num_bytes);
+
// Map |dispatcher2| and read something.
- EXPECT_EQ(MOJO_RESULT_OK, dispatcher2->MapBuffer(
- 0, 100, MOJO_MAP_BUFFER_FLAG_NONE, &mapping));
+ EXPECT_EQ(
+ MOJO_RESULT_OK,
+ dispatcher2->MapBuffer(0u, kSize, MOJO_MAP_BUFFER_FLAG_NONE, &mapping));
EXPECT_EQ('x', static_cast<char*>(mapping->GetBase())[0]);
EXPECT_EQ(MOJO_RESULT_OK, dispatcher2->Close());

Powered by Google App Engine
This is Rietveld 408576698