From 699ac7ed2491184f323067cca19593835a9c1d83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ha=CC=88cker?= Date: Wed, 3 May 2017 10:27:27 +0200 Subject: [PATCH] Fix test --- tests/transformer/test_slice.py | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/tests/transformer/test_slice.py b/tests/transformer/test_slice.py index 9962a29..9025f51 100644 --- a/tests/transformer/test_slice.py +++ b/tests/transformer/test_slice.py @@ -5,14 +5,17 @@ def test_slice(): low = 1 high = 4 stride = 3 + + from operator import getitem + restricted_globals = dict(_getitem_=getitem) + restricted_eval = lambda code: e_eval[1][1](code, restricted_globals) - assert e_eval('[1, 2, 3, 4, 5]') == [1, 2, 3, 4, 5] - assert e_eval('[1, 2, 3, 4, 5][:]') == [1, 2, 3, 4, 5] - assert e_eval('[1, 2, 3, 4, 5][' + low + ':]') == [] - assert e_eval('[1, 2, 3, 4, 5][:' + high + ']') == [] - assert e_eval('[1, 2, 3, 4, 5][' + low + ':' + high + ']') == [] - assert e_eval('[1, 2, 3, 4, 5][::' + stride + ']') == [] - assert e_eval('[1, 2, 3, 4, 5][' + low + '::' + stride + ']') == [] - assert e_eval('[1, 2, 3, 4, 5][:' + high + ':' + stride + ']') == [] - assert e_eval('[1, 2, 3, 4, 5][' + low + ':' + high + ':' + stride + ']') \ - == [] + assert restricted_eval('[1, 2, 3, 4, 5]') == [1, 2, 3, 4, 5] + assert restricted_eval('[1, 2, 3, 4, 5][:]') == [1, 2, 3, 4, 5] + assert restricted_eval('[1, 2, 3, 4, 5][%d:]' % low) == [2, 3, 4, 5] + assert restricted_eval('[1, 2, 3, 4, 5][:%d]' % high) == [1, 2, 3, 4] + assert restricted_eval('[1, 2, 3, 4, 5][%d:%d]' % (low, high)) == [2, 3, 4] + assert restricted_eval('[1, 2, 3, 4, 5][::%d]' % stride) == [1, 4] + assert restricted_eval('[1, 2, 3, 4, 5][%d::%d]' % (low, stride)) == [2, 5] + assert restricted_eval('[1, 2, 3, 4, 5][:%d:%d]' % (high, stride)) == [1, 4] + assert restricted_eval('[1, 2, 3, 4, 5][%d:%d:%d]' % (low, high, stride)) == [2]