From 1993c8cf9af930cd6ff2f28390ac3a8a09d5b297 Mon Sep 17 00:00:00 2001 From: Damien George Date: Fri, 28 Feb 2020 12:45:36 +1100 Subject: py/builtinevex: Support passing in a bytearray/buffer to eval/exec. CPython allows this and it's a simple generalisation of the existing code which just supported str/bytes. Fixes issue #5704. --- tests/basics/builtin_eval_buffer.py | 12 ++++++++++++ tests/basics/builtin_exec_buffer.py | 12 ++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 tests/basics/builtin_eval_buffer.py create mode 100644 tests/basics/builtin_exec_buffer.py (limited to 'tests') diff --git a/tests/basics/builtin_eval_buffer.py b/tests/basics/builtin_eval_buffer.py new file mode 100644 index 000000000..9eaf28204 --- /dev/null +++ b/tests/basics/builtin_eval_buffer.py @@ -0,0 +1,12 @@ +# test builtin eval with a buffer (bytearray/memoryview) input + +try: + eval + bytearray + memoryview +except: + print("SKIP") + raise SystemExit + +print(eval(bytearray(b'1 + 1'))) +print(eval(memoryview(b'2 + 2'))) diff --git a/tests/basics/builtin_exec_buffer.py b/tests/basics/builtin_exec_buffer.py new file mode 100644 index 000000000..a875cfb1f --- /dev/null +++ b/tests/basics/builtin_exec_buffer.py @@ -0,0 +1,12 @@ +# test builtin exec with a buffer (bytearray/memoryview) input + +try: + exec + bytearray + memoryview +except: + print("SKIP") + raise SystemExit + +exec(bytearray(b'print(1)')) +exec(memoryview(b'print(2)')) -- cgit v1.2.3