aboutsummaryrefslogtreecommitdiff
path: root/src/common/mac/macho_reader_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/mac/macho_reader_unittest.cc')
-rw-r--r--src/common/mac/macho_reader_unittest.cc30
1 files changed, 17 insertions, 13 deletions
diff --git a/src/common/mac/macho_reader_unittest.cc b/src/common/mac/macho_reader_unittest.cc
index 9bc6d25a..d8459d8c 100644
--- a/src/common/mac/macho_reader_unittest.cc
+++ b/src/common/mac/macho_reader_unittest.cc
@@ -196,7 +196,7 @@ struct FatReaderFixture {
FatReaderFixture()
: fat(kBigEndian),
reporter("reporter filename"),
- reader(&reporter), object_files(), object_files_size() {
+ reader(&reporter), object_files() {
EXPECT_CALL(reporter, BadHeader()).Times(0);
EXPECT_CALL(reporter, TooShort()).Times(0);
@@ -224,7 +224,12 @@ struct FatReaderFixture {
fat_bytes = reinterpret_cast<const uint8_t *>(contents.data());
if (expect_parse_success) {
EXPECT_TRUE(reader.Read(fat_bytes, contents.size()));
- object_files = reader.object_files(&object_files_size);
+ size_t fat_files_count;
+ const SuperFatArch* fat_files = reader.object_files(&fat_files_count);
+ object_files.resize(fat_files_count);
+ for (size_t i = 0; i < fat_files_count; ++i) {
+ EXPECT_TRUE(fat_files[i].ConvertToFatArch(&object_files[i]));
+ }
}
else
EXPECT_FALSE(reader.Read(fat_bytes, contents.size()));
@@ -234,8 +239,7 @@ struct FatReaderFixture {
FatReader reader;
string contents;
const uint8_t *fat_bytes;
- const struct fat_arch *object_files;
- size_t object_files_size;
+ vector<struct fat_arch> object_files;
};
class FatReaderTest: public FatReaderFixture, public Test { };
@@ -289,7 +293,7 @@ TEST_F(FatReaderTest, NoObjectFiles) {
.B32(0xcafebabe) // magic number
.B32(0); // number of architectures
ReadFat();
- EXPECT_EQ(0U, object_files_size);
+ EXPECT_EQ(0U, object_files.size());
}
TEST_F(FatReaderTest, OneObjectFile) {
@@ -304,7 +308,7 @@ TEST_F(FatReaderTest, OneObjectFile) {
.Mark(&obj1_offset)
.Append(0x42, '*'); // dummy contents
ReadFat();
- ASSERT_EQ(1U, object_files_size);
+ ASSERT_EQ(1U, object_files.size());
EXPECT_EQ(0x5e3a6e91, object_files[0].cputype);
EXPECT_EQ(0x52ccd852, object_files[0].cpusubtype);
EXPECT_EQ(obj1_offset.Value(), object_files[0].offset);
@@ -334,7 +338,7 @@ TEST_F(FatReaderTest, ThreeObjectFiles) {
ReadFat();
- ASSERT_EQ(3U, object_files_size);
+ ASSERT_EQ(3U, object_files.size());
// First object file.
EXPECT_EQ(0x0cb92c30, object_files[0].cputype);
@@ -373,7 +377,7 @@ TEST_F(FatReaderTest, BigEndianMachO32) {
// FatReader should treat a Mach-O file as if it were a fat binary file
// containing one object file --- the whole thing.
- ASSERT_EQ(1U, object_files_size);
+ ASSERT_EQ(1U, object_files.size());
EXPECT_EQ(0x1a9d0518, object_files[0].cputype);
EXPECT_EQ(0x1b779357, object_files[0].cpusubtype);
EXPECT_EQ(0U, object_files[0].offset);
@@ -395,7 +399,7 @@ TEST_F(FatReaderTest, BigEndianMachO64) {
// FatReader should treat a Mach-O file as if it were a fat binary file
// containing one object file --- the whole thing.
- ASSERT_EQ(1U, object_files_size);
+ ASSERT_EQ(1U, object_files.size());
EXPECT_EQ(0x5aff8487, object_files[0].cputype);
EXPECT_EQ(0x4c6a57f7, object_files[0].cpusubtype);
EXPECT_EQ(0U, object_files[0].offset);
@@ -417,7 +421,7 @@ TEST_F(FatReaderTest, LittleEndianMachO32) {
// FatReader should treat a Mach-O file as if it were a fat binary file
// containing one object file --- the whole thing.
- ASSERT_EQ(1U, object_files_size);
+ ASSERT_EQ(1U, object_files.size());
EXPECT_EQ(0x1a9d0518, object_files[0].cputype);
EXPECT_EQ(0x1b779357, object_files[0].cpusubtype);
EXPECT_EQ(0U, object_files[0].offset);
@@ -439,7 +443,7 @@ TEST_F(FatReaderTest, LittleEndianMachO64) {
// FatReader should treat a Mach-O file as if it were a fat binary file
// containing one object file --- the whole thing.
- ASSERT_EQ(1U, object_files_size);
+ ASSERT_EQ(1U, object_files.size());
EXPECT_EQ(0x5aff8487, object_files[0].cputype);
EXPECT_EQ(0x4c6a57f7, object_files[0].cpusubtype);
EXPECT_EQ(0U, object_files[0].offset);
@@ -1110,7 +1114,7 @@ TEST_F(LoadCommand, SegmentBE32) {
Return(true)));
EXPECT_TRUE(reader.WalkLoadCommands(&load_command_handler));
- EXPECT_EQ(false, actual_segment.bits_64);
+ EXPECT_FALSE(actual_segment.bits_64);
EXPECT_EQ("froon", actual_segment.name);
EXPECT_EQ(0x1891139cU, actual_segment.vmaddr);
EXPECT_EQ(0xcb76584fU, actual_segment.vmsize);
@@ -1147,7 +1151,7 @@ TEST_F(LoadCommand, SegmentLE32) {
Return(true)));
EXPECT_TRUE(reader.WalkLoadCommands(&load_command_handler));
- EXPECT_EQ(false, actual_segment.bits_64);
+ EXPECT_FALSE(actual_segment.bits_64);
EXPECT_EQ("sixteenprecisely", actual_segment.name);
EXPECT_EQ(0x4b877866U, actual_segment.vmaddr);
EXPECT_EQ(0xcb76584fU, actual_segment.vmsize);