diff options
-rw-r--r-- | tools/binman/entry.py | 6 | ||||
-rw-r--r-- | tools/binman/etype/section.py | 14 | ||||
-rw-r--r-- | tools/binman/ftest.py | 4 |
3 files changed, 22 insertions, 2 deletions
diff --git a/tools/binman/entry.py b/tools/binman/entry.py index d701eaff8fd..01a5fde84ed 100644 --- a/tools/binman/entry.py +++ b/tools/binman/entry.py @@ -437,6 +437,12 @@ class Entry(object): return self._node.path def GetData(self): + """Get the contents of an entry + + Returns: + bytes content of the entry, excluding any padding. If the entry is + compressed, the compressed data is returned + """ self.Detail('GetData: size %s' % ToHexSize(self.data)) return self.data diff --git a/tools/binman/etype/section.py b/tools/binman/etype/section.py index c423a22c80f..6e6f6749727 100644 --- a/tools/binman/etype/section.py +++ b/tools/binman/etype/section.py @@ -226,7 +226,19 @@ class Entry_section(Entry): return section.GetPaddedDataForEntry(self) def GetData(self): - return self._BuildSectionData() + """Get the contents of an entry + + This builds the contents of the section, stores this as the contents of + the section and returns it + + Returns: + bytes content of the section, made up for all all of its subentries. + This excludes any padding. If the section is compressed, the + compressed data is returned + """ + data = self._BuildSectionData() + self.SetContents(data) + return data def GetOffsets(self): """Handle entries that want to set the offset/size of other entries diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py index 4c94bea6f00..6f47deac3b6 100644 --- a/tools/binman/ftest.py +++ b/tools/binman/ftest.py @@ -1822,6 +1822,8 @@ class TestFunctional(unittest.TestCase): orig = self._decompress(entry.data) self.assertEqual(orig, entry.uncomp_data) + self.assertEqual(image.data, entry.data) + expected = { 'blob:uncomp-size': len(COMPRESS_DATA), 'blob:size': len(data), @@ -3890,7 +3892,7 @@ class TestFunctional(unittest.TestCase): section = entries['section'] self.assertEqual(0, section.offset) self.assertEqual(len(all), section.size) - self.assertIsNone(section.data) + self.assertEqual(U_BOOT_DATA, section.data) self.assertEqual(all, section.GetPaddedData()) entry = section.GetEntries()['u-boot'] |