diff options
Diffstat (limited to 'tools/releasetools/common.py')
| -rw-r--r-- | tools/releasetools/common.py | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/tools/releasetools/common.py b/tools/releasetools/common.py index 3334ce839a..de3e3b8b4a 100644 --- a/tools/releasetools/common.py +++ b/tools/releasetools/common.py @@ -2226,12 +2226,6 @@ class DynamicPartitionsDifference(object): collections.Counter(e.partition for e in block_diffs).items() if count > 1]) - dynamic_partitions = set(shlex.split(info_dict.get( - "dynamic_partition_list", "").strip())) - assert set(block_diff_dict.keys()) == dynamic_partitions, \ - "Dynamic partitions: {}, BlockDifference objects: {}".format( - list(dynamic_partitions), list(block_diff_dict.keys())) - self._partition_updates = dict() for p, block_diff in block_diff_dict.items(): @@ -2263,6 +2257,22 @@ class DynamicPartitionsDifference(object): "object is provided.".format(p, g) self._partition_updates[p].src_group = g + target_dynamic_partitions = set(shlex.split(info_dict.get( + "dynamic_partition_list", "").strip())) + block_diffs_with_target = set(p for p, u in self._partition_updates.items() + if u.tgt_size) + assert block_diffs_with_target == target_dynamic_partitions, \ + "Target Dynamic partitions: {}, BlockDifference with target: {}".format( + list(target_dynamic_partitions), list(block_diffs_with_target)) + + source_dynamic_partitions = set(shlex.split(source_info_dict.get( + "dynamic_partition_list", "").strip())) + block_diffs_with_source = set(p for p, u in self._partition_updates.items() + if u.src_size) + assert block_diffs_with_source == source_dynamic_partitions, \ + "Source Dynamic partitions: {}, BlockDifference with source: {}".format( + list(source_dynamic_partitions), list(block_diffs_with_source)) + if self._partition_updates: logger.info("Updating dynamic partitions %s", self._partition_updates.keys()) |