summaryrefslogtreecommitdiff
path: root/suite/api_test.py
diff options
context:
space:
mode:
authorPeter LaFosse <peter@vector35.com>2022-01-24 19:51:46 -0500
committerPeter LaFosse <peter@vector35.com>2022-01-25 10:20:26 -0500
commit2c0f75b954dea781b7ac68eee0ec7e8fbeadee4e (patch)
tree4a9496dc5817f31c6dbec461fd9b29a33fed7945 /suite/api_test.py
parente632b5c4cd533bbae8230678dc6a57ea4734b62d (diff)
Fix bug and add test for NamedTypeReferenceBuilder.__repr__
Make Type/TypeBuilder.__repr__s consistent
Diffstat (limited to 'suite/api_test.py')
-rw-r--r--suite/api_test.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/suite/api_test.py b/suite/api_test.py
index b04711bf..0a5770a7 100644
--- a/suite/api_test.py
+++ b/suite/api_test.py
@@ -590,32 +590,48 @@ class TypeBuilderTest(unittest.TestCase):
assert b.name == "name"
assert b.id == "type_id"
assert b.named_type_class == NamedTypeReferenceClass.TypedefNamedTypeClass
+ assert repr(b).startswith("<type: mutable:NamedTypeReferenceClass 'typedef")
b = TypeBuilder.named_type_from_type_and_id("type_id", QualifiedName(b"name"))
assert b.name == "name"
assert b.id == "type_id"
assert b.named_type_class == NamedTypeReferenceClass.UnknownNamedTypeClass
+ assert repr(b).startswith("<type: mutable:NamedTypeReferenceClass 'unknown")
enm = TypeBuilder.enumeration(self.arch, [("Member1", 0)], 4, False)
b = TypeBuilder.named_type_from_type_and_id("type_id", QualifiedName(b"name"), enm)
assert b.name == "name"
assert b.id == "type_id"
assert b.named_type_class == NamedTypeReferenceClass.EnumNamedTypeClass
+ assert repr(b).startswith("<type: mutable:NamedTypeReferenceClass 'enum")
str = TypeBuilder.structure([], True, StructureVariant.StructStructureType)
b = TypeBuilder.named_type_from_type_and_id("type_id", QualifiedName(b"name"), str)
assert b.name == "name"
assert b.id == "type_id"
assert b.named_type_class == NamedTypeReferenceClass.StructNamedTypeClass
+ assert repr(b).startswith("<type: mutable:NamedTypeReferenceClass 'struct")
str = TypeBuilder.structure([], True, StructureVariant.ClassStructureType)
b = TypeBuilder.named_type_from_type_and_id("type_id", QualifiedName(b"name"), str)
assert b.name == "name"
assert b.id == "type_id"
assert b.named_type_class == NamedTypeReferenceClass.ClassNamedTypeClass
+ assert repr(b).startswith("<type: mutable:NamedTypeReferenceClass 'class")
str = TypeBuilder.structure([], True, StructureVariant.UnionStructureType)
b = TypeBuilder.named_type_from_type_and_id("type_id", QualifiedName([b"name", b"name"]), str)
assert b.name == QualifiedName(["name", "name"])
assert b.id == "type_id"
assert b.named_type_class == NamedTypeReferenceClass.UnionNamedTypeClass
+ assert repr(b).startswith("<type: mutable:NamedTypeReferenceClass 'union")
+
+ b = NamedTypeReferenceBuilder.named_type(b, 4, 4)
+ assert b.width == 4
+ assert b.alignment == 4
+
+ b = NamedTypeReferenceBuilder.named_type_from_type("name")
+ b.named_type_class == NamedTypeReferenceClass.UnknownNamedTypeClass
+
+ # need binary view for this one
+ #b = NamedTypeReferenceBuilder.named_type_from_registered_type(bv, ) \ No newline at end of file