summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter LaFosse <peter@vector35.com>2022-05-20 08:25:21 -0400
committerPeter LaFosse <peter@vector35.com>2022-05-20 08:39:23 -0400
commit301063305f499f3abcec3371e3d3a0c2d5657b52 (patch)
treee960c93e3df65270887769c0834ebdd15f5072d7
parent09a1a14d7c22b0bf3e672e36195f97c8bf7ef393 (diff)
Add test for segments
-rw-r--r--suite/api_test.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/suite/api_test.py b/suite/api_test.py
index cfdc451d..652307d1 100644
--- a/suite/api_test.py
+++ b/suite/api_test.py
@@ -2096,6 +2096,31 @@ class TestBinaryView(TestWithBinaryView):
assert section.semantics == SectionSemantics.ReadOnlyDataSectionSemantics
assert section.auto_defined
assert section.end == 0x8524
+ assert section.type == ''
+
+ def test_segments(self):
+ segments = self.bv.segments
+ segment = segments[0]
+ assert len(segments) == 3
+ assert len(segment) == 1320
+ assert segment == segment
+ assert segment != segments[1]
+ assert segment.start in segment
+ assert segment.start == 0x8000
+ assert segment.end == 0x8528
+ assert segment.readable
+ assert not segment.writable
+ assert segment.executable
+ assert segment.data_length == 0x528
+ assert segment.data_offset == 0x0
+ assert segment.data_end == 0x8528
+ assert segment.auto_defined
+ assert segment.relocation_count == 0
+ s2 = segments[1]
+ assert s2.relocation_count == 5
+ assert s2.relocation_ranges == [(69644, 69648), (69648, 69652), (69652, 69656), (69656, 69660), (69660, 69664)]
+ assert s2.relocation_ranges_at(69644) == [(69644, 69648)]
+ assert hash(segment) != hash(s2)
def test_binary_data_nofification_default(self):
bv = self.bv