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

Unified Diff: base/files/memory_mapped_file_unittest.cc

Issue 430583005: Make VEA test support videos with different coded size and visible size (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address review comments of patch set 12 Created 6 years, 4 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: base/files/memory_mapped_file_unittest.cc
diff --git a/base/files/memory_mapped_file_unittest.cc b/base/files/memory_mapped_file_unittest.cc
index 6627d4044287d0f81ddab3cb9b0389399e43da74..efc9be6521674fdf5fe1e2d110e1a00fd8a5b97f 100644
--- a/base/files/memory_mapped_file_unittest.cc
+++ b/base/files/memory_mapped_file_unittest.cc
@@ -69,7 +69,8 @@ TEST_F(MemoryMappedFileTest, MapWholeFileByFD) {
const size_t kFileSize = 68 * 1024;
CreateTemporaryTestFile(kFileSize);
MemoryMappedFile map;
- map.Initialize(File(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ));
+ map.Initialize(File(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ),
+ false);
ASSERT_EQ(kFileSize, map.length());
ASSERT_TRUE(map.data() != NULL);
EXPECT_TRUE(map.IsValid());
@@ -93,7 +94,7 @@ TEST_F(MemoryMappedFileTest, MapWholeFileUsingRegion) {
MemoryMappedFile map;
File file(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ);
- map.Initialize(file.Pass(), MemoryMappedFile::Region::kWholeFile);
+ map.Initialize(file.Pass(), MemoryMappedFile::Region::kWholeFile, false);
ASSERT_EQ(kFileSize, map.length());
ASSERT_TRUE(map.data() != NULL);
EXPECT_TRUE(map.IsValid());
@@ -107,7 +108,7 @@ TEST_F(MemoryMappedFileTest, MapPartialRegionAtBeginning) {
MemoryMappedFile map;
File file(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ);
- map.Initialize(file.Pass(), MemoryMappedFile::Region(0, kPartialSize));
+ map.Initialize(file.Pass(), MemoryMappedFile::Region(0, kPartialSize), false);
ASSERT_EQ(kPartialSize, map.length());
ASSERT_TRUE(map.data() != NULL);
EXPECT_TRUE(map.IsValid());
@@ -122,7 +123,8 @@ TEST_F(MemoryMappedFileTest, MapPartialRegionAtEnd) {
MemoryMappedFile map;
File file(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ);
- map.Initialize(file.Pass(), MemoryMappedFile::Region(kOffset, kPartialSize));
+ map.Initialize(file.Pass(), MemoryMappedFile::Region(kOffset, kPartialSize),
+ false);
ASSERT_EQ(kPartialSize, map.length());
ASSERT_TRUE(map.data() != NULL);
EXPECT_TRUE(map.IsValid());
@@ -138,7 +140,8 @@ TEST_F(MemoryMappedFileTest, MapSmallPartialRegionInTheMiddle) {
MemoryMappedFile map;
File file(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ);
- map.Initialize(file.Pass(), MemoryMappedFile::Region(kOffset, kPartialSize));
+ map.Initialize(file.Pass(), MemoryMappedFile::Region(kOffset, kPartialSize),
+ false);
ASSERT_EQ(kPartialSize, map.length());
ASSERT_TRUE(map.data() != NULL);
EXPECT_TRUE(map.IsValid());
@@ -154,13 +157,74 @@ TEST_F(MemoryMappedFileTest, MapLargePartialRegionInTheMiddle) {
MemoryMappedFile map;
File file(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ);
- map.Initialize(file.Pass(), MemoryMappedFile::Region(kOffset, kPartialSize));
+ map.Initialize(file.Pass(), MemoryMappedFile::Region(kOffset, kPartialSize),
+ false);
ASSERT_EQ(kPartialSize, map.length());
ASSERT_TRUE(map.data() != NULL);
EXPECT_TRUE(map.IsValid());
ASSERT_TRUE(CheckBufferContents(map.data(), kPartialSize, kOffset));
}
+TEST_F(MemoryMappedFileTest, MapWholeFileWithWrite) {
+ const size_t kFileSize = 68 * 1024;
+ CreateTemporaryTestFile(kFileSize);
+ MemoryMappedFile* map = new MemoryMappedFile();
+ map->Initialize(File(temp_file_path(), File::FLAG_OPEN |
+ File::FLAG_READ |
+ File::FLAG_WRITE), true);
+ ASSERT_EQ(kFileSize, map->length());
+ ASSERT_TRUE(map->data() != NULL);
+ EXPECT_TRUE(map->IsValid());
+ ASSERT_TRUE(CheckBufferContents(map->data(), kFileSize, 0));
+
+ size_t size = 20, offset = 100;
+ scoped_ptr<uint8[]> test_data(CreateTestBuffer(size, offset));
+ memcpy(map->data(), test_data.get(), size);
+ delete map;
+
+ MemoryMappedFile read_map;
+ read_map.Initialize(File(temp_file_path(), File::FLAG_OPEN |
+ File::FLAG_READ), false);
+ ASSERT_EQ(kFileSize, read_map.length());
+ ASSERT_TRUE(read_map.data() != NULL);
+ EXPECT_TRUE(read_map.IsValid());
+ ASSERT_TRUE(CheckBufferContents(read_map.data(), size, offset));
+}
+
+TEST_F(MemoryMappedFileTest, MapLargePartialRegionInTheMiddleWithWrite) {
+ const size_t kFileSize = 157 * 1024;
+ const size_t kOffset = 1024 * 5 + 32;
+ const size_t kPartialSize = 16 * 1024 - 32;
+
+ CreateTemporaryTestFile(kFileSize);
+ MemoryMappedFile* map = new MemoryMappedFile();
+
+ File file(temp_file_path(), File::FLAG_OPEN |
+ File::FLAG_READ |
+ File::FLAG_WRITE);
+ map->Initialize(
+ file.Pass(), MemoryMappedFile::Region(kOffset, kPartialSize), true);
+ ASSERT_EQ(kPartialSize, map->length());
+ ASSERT_TRUE(map->data() != NULL);
+ EXPECT_TRUE(map->IsValid());
+ ASSERT_TRUE(CheckBufferContents(map->data(), kPartialSize, kOffset));
+
+ size_t size = 20, offset = 100;
+ scoped_ptr<uint8[]> test_data(CreateTestBuffer(size, offset));
+ memcpy(map->data(), test_data.get(), size);
+ delete map;
+
+ MemoryMappedFile read_map;
+ read_map.Initialize(
+ File(temp_file_path(), File::FLAG_OPEN | File::FLAG_READ),
+ MemoryMappedFile::Region(kOffset, kPartialSize),
+ false);
+ ASSERT_EQ(kPartialSize, read_map.length());
+ ASSERT_TRUE(read_map.data() != NULL);
+ EXPECT_TRUE(read_map.IsValid());
+ ASSERT_TRUE(CheckBufferContents(read_map.data(), size, offset));
+}
+
} // namespace
} // namespace base

Powered by Google App Engine
This is Rietveld 408576698