From 8e8e6e472bec908eb9cc63cb3a8c042ba5b93279 Mon Sep 17 00:00:00 2001 From: Fabrice Desclaux Date: Thu, 8 Jun 2017 09:03:43 +0200 Subject: Expression: add an Expression parser --- test/expression/parser.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 test/expression/parser.py (limited to 'test/expression/parser.py') diff --git a/test/expression/parser.py b/test/expression/parser.py new file mode 100644 index 00000000..9c01c8a1 --- /dev/null +++ b/test/expression/parser.py @@ -0,0 +1,16 @@ +from miasm2.expression.parser import str_to_expr +from miasm2.expression.expression import ExprInt, ExprId, ExprSlice, ExprMem, \ + ExprCond, ExprCompose, ExprOp, ExprAff + +for expr_test in [ExprInt(0x12, 32), + ExprId('test', 32), + ExprSlice(ExprInt(0x10, 32), 0, 8), + ExprMem(ExprInt(0x10, 32), 32), + ExprCond(ExprInt(0x10, 32), ExprInt(0x11, 32), ExprInt(0x12, 32)), + ExprCompose(ExprInt(0x10, 16), ExprInt(0x11, 8), ExprInt(0x12, 8)), + ExprInt(0x11, 8) + ExprInt(0x12, 8), + ExprAff(ExprId('EAX', 32), ExprInt(0x12, 32)), + ]: + + print 'Test: %s' % expr_test + assert str_to_expr(repr(expr_test)) == expr_test -- cgit 1.4.1