summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Yifan Hong <elsk@google.com> 2019-04-09 16:49:33 -0700
committer Yifan Hong <elsk@google.com> 2019-04-09 17:01:53 -0700
commit6f3eaeb84d610dbcbe0a677fb90ae2252bc56624 (patch)
tree23fdcad7b0d237fb9a13497a09b3cd6b19ef400f
parentd7d6e9d6718257c3cfb2a7380021473ae9a5a868 (diff)
Fix DataImage.ReadRangeSet()
It returns a list of one generator object, not a list of strings. Test: test_blockimgdiff Change-Id: I8962c539c2ce3fae90d428b38c4b0e52c5a2cdad
-rw-r--r--tools/releasetools/blockimgdiff.py2
-rw-r--r--tools/releasetools/test_blockimgdiff.py9
2 files changed, 9 insertions, 2 deletions
diff --git a/tools/releasetools/blockimgdiff.py b/tools/releasetools/blockimgdiff.py
index e5a9050b10..b7c33f54be 100644
--- a/tools/releasetools/blockimgdiff.py
+++ b/tools/releasetools/blockimgdiff.py
@@ -174,7 +174,7 @@ class DataImage(Image):
return h.hexdigest()
def ReadRangeSet(self, ranges):
- return [self._GetRangeData(ranges)]
+ return list(self._GetRangeData(ranges))
def TotalSha1(self, include_clobbered_blocks=False):
if not include_clobbered_blocks:
diff --git a/tools/releasetools/test_blockimgdiff.py b/tools/releasetools/test_blockimgdiff.py
index 806ff4b95a..1aabaa2162 100644
--- a/tools/releasetools/test_blockimgdiff.py
+++ b/tools/releasetools/test_blockimgdiff.py
@@ -16,7 +16,7 @@
import common
from blockimgdiff import (
- BlockImageDiff, EmptyImage, HeapItem, ImgdiffStats, Transfer)
+ BlockImageDiff, DataImage, EmptyImage, HeapItem, ImgdiffStats, Transfer)
from rangelib import RangeSet
from test_utils import ReleaseToolsTestCase
@@ -261,3 +261,10 @@ class ImgdiffStatsTest(ReleaseToolsTestCase):
self.assertRaises(AssertionError, imgdiff_stats.Log, "/system/app/app1.apk",
"invalid reason")
+
+
+class DataImageTest(ReleaseToolsTestCase):
+ def test_read_range_set(self):
+ data = "file" + ('\0' * 4092)
+ image = DataImage(data)
+ self.assertEqual(data, "".join(image.ReadRangeSet(image.care_map)))