summaryrefslogtreecommitdiff
path: root/suite/api_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'suite/api_test.py')
-rw-r--r--suite/api_test.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/suite/api_test.py b/suite/api_test.py
index 48d6601d..ccb4d8b0 100644
--- a/suite/api_test.py
+++ b/suite/api_test.py
@@ -5,7 +5,7 @@ import os
from binaryninja.binaryview import BinaryView, BinaryViewType
from binaryninja.settings import Settings, SettingsScope
from binaryninja.metadata import Metadata
-from binaryninja.demangle import demangle_gnu3, get_qualified_name
+from binaryninja.demangle import demangle_gnu3, demangle_ms, get_qualified_name
from binaryninja.architecture import Architecture
@@ -275,6 +275,20 @@ class DemanglerTest(unittest.TestCase):
out += str(t.get_string_after_name())
return out
+ def test_demangle_ms(self):
+ tests = (
+ "??_V@YAPAXI@Z",
+ "??_U@YAPAXI@Z"
+ )
+
+ results = (
+ "void* __cdecl operator delete[](uint32_t)",
+ "void* __cdecl operator new[](uint32_t)"
+ )
+ for i, test in enumerate(tests):
+ t, n = demangle_ms(Architecture['x86'], test)
+ self.get_type_string(t, n) == results[i]
+
def test_demangle_gnu3(self):
tests = ("__ZN15BinaryNinjaCore12BinaryReader5Read8Ev",
"__ZN5QListIP18QAbstractAnimationE18detach_helper_growEii",