[(1, 'a'), (2, 'b'), (3, 'c')]
"""
+cimport cython
+
def smoketest_dict():
return { x+2:x*2
for x in range(5)
if x % 2 == 0 }
+@cython.testFailIfPathExists("//ComprehensionNode//ComprehensionAppendNode",
+ "//SimpleCallNode//ComprehensionNode")
+@cython.testAssertPathExists("//ComprehensionNode",
+ "//ComprehensionNode//DictComprehensionAppendNode")
def smoketest_list():
return dict([ (x+2,x*2)
for x in range(5)
"""
+cimport cython
+
+@cython.testFailIfPathExists("//SimpleCallNode//NameNode[@name = 'enumerate']")
def go_py_enumerate():
for i,k in enumerate(range(1,5)):
print i, k
+@cython.testFailIfPathExists("//SimpleCallNode//NameNode[@name = 'enumerate']")
def go_c_enumerate():
cdef int i,k
for i,k in enumerate(range(1,5)):
print i, k
+@cython.testFailIfPathExists("//SimpleCallNode//NameNode[@name = 'enumerate']")
def go_c_enumerate_step():
cdef int i,k
for i,k in enumerate(range(1,7,2)):
print i, k
+@cython.testFailIfPathExists("//SimpleCallNode//NameNode[@name = 'enumerate']")
def py_enumerate_dict(dict d):
cdef int i = 55
k = 99
print i, k
print u"::", i, k
+@cython.testFailIfPathExists("//SimpleCallNode")
def py_enumerate_break(*t):
i,k = 55,99
for i,k in enumerate(t):
break
print u"::", i, k
+@cython.testFailIfPathExists("//SimpleCallNode")
def py_enumerate_return(*t):
i,k = 55,99
for i,k in enumerate(t):
return
print u"::", i, k
+@cython.testFailIfPathExists("//SimpleCallNode")
def py_enumerate_continue(*t):
i,k = 55,99
for i,k in enumerate(t):
continue
print u"::", i, k
+@cython.testFailIfPathExists("//SimpleCallNode//NameNode[@name = 'enumerate']")
def empty_c_enumerate():
cdef int i = 55, k = 99
for i,k in enumerate(range(0)):
print i, k
return i, k
+# not currently optimised
def single_target_enumerate():
for t in enumerate(range(1,5)):
print t[0], t[1]
+@cython.testFailIfPathExists("//SimpleCallNode//NameNode[@name = 'enumerate']")
def multi_enumerate():
for a,(b,(c,d)) in enumerate(enumerate(enumerate(range(1,5)))):
print a,b,c,d
+@cython.testFailIfPathExists("//SimpleCallNode")
def multi_c_enumerate():
cdef int a,b,c,d
for a,(b,(c,d)) in enumerate(enumerate(enumerate(range(1,5)))):
(2, 0)
"""
+cimport cython
+
+@cython.testAssertPathExists("//ForFromStatNode")
+@cython.testFailIfPathExists("//ForInStatNode")
def test_modify():
cdef int i, n = 5
for i in range(n):
print
return i,n
+@cython.testAssertPathExists("//ForFromStatNode")
+@cython.testFailIfPathExists("//ForInStatNode")
def test_fix():
cdef int i
for i in range(5):
print
return i
+@cython.testAssertPathExists("//ForFromStatNode")
+@cython.testFailIfPathExists("//ForInStatNode")
def test_break():
cdef int i, n = 5
for i in range(n):
print
return i,n
+@cython.testAssertPathExists("//ForFromStatNode")
+@cython.testFailIfPathExists("//ForInStatNode")
def test_return():
cdef int i, n = 5
for i in range(n):