regress: add testcase for issue #6

This commit is contained in:
Nguyen Anh Quynh
2016-05-05 00:06:40 +08:00
parent 09eab9f018
commit e474363b10
+31
View File
@@ -0,0 +1,31 @@
#!/usr/bin/python
# Nguyen Anh Quynh, 2016
# Test 'jmp dword ptr [5]' with both X86 Intel & ATT syntax
# Github issue: #5
# Author: Nguyen Anh Quynh
from keystone import *
import regress
class TestX86(regress.RegressTest):
def runTest(self):
# Initialize Keystone engine
ks = Ks(KS_ARCH_X86, KS_MODE_32)
ks.syntax = KS_OPT_SYNTAX_ATT
# Assemble to get back insn encoding & statement count
encoding, count = ks.asm("jmpl *5")
# Assert the result
self.assertEqual(encoding, [ 0xff, 0x25, 0x05, 0x00, 0x00, 0x00 ])
ks.syntax = KS_OPT_SYNTAX_INTEL
# Assemble to get back insn encoding & statement count
encoding, count = ks.asm("jmp dword ptr [5]")
# Assert the result
self.assertEqual(encoding, [ 0xff, 0x25, 0x05, 0x00, 0x00, 0x00 ])
if __name__ == '__main__':
regress.main()