Cython has moved to github.
cython-devel
view tests/run/charescape.pyx @ 1622:4f0327bdebc9
test for temp allocation bug in call
| author | Robert Bradshaw <robertwb@math.washington.edu> |
|---|---|
| date | Sat Jan 17 01:25:34 2009 -0800 (3 years ago) |
| parents | 517051aaa399 |
| children |
line source
1 import sys
2 if sys.version_info[0] < 3:
3 __doc__ = u"""
4 >>> s = test()
5 >>> assert s == ''.join(map(chr, range(1,49))), repr(s)
6 """
7 else:
8 __doc__ = u"""
9 >>> s = test()
10 >>> assert s == bytes(range(1,49)), repr(s)
11 """
13 def test():
14 cdef char s[50]
16 s[ 0] = c'\0'
17 s[ 1] = c'\x01'
18 s[ 2] = c'\x02'
19 s[ 3] = c'\x03'
20 s[ 4] = c'\x04'
21 s[ 5] = c'\x05'
22 s[ 6] = c'\x06'
23 s[ 7] = c'\x07'
24 s[ 8] = c'\x08'
25 s[ 9] = c'\x09'
26 s[10] = c'\x0A'
27 s[11] = c'\x0B'
28 s[12] = c'\x0C'
29 s[13] = c'\x0D'
30 s[14] = c'\x0E'
31 s[15] = c'\x0F'
32 s[16] = c'\x10'
33 s[17] = c'\x11'
34 s[18] = c'\x12'
35 s[19] = c'\x13'
36 s[20] = c'\x14'
37 s[21] = c'\x15'
38 s[22] = c'\x16'
39 s[23] = c'\x17'
40 s[24] = c'\x18'
41 s[25] = c'\x19'
42 s[26] = c'\x1A'
43 s[27] = c'\x1B'
44 s[28] = c'\x1C'
45 s[29] = c'\x1D'
46 s[30] = c'\x1E'
47 s[31] = c'\x1F'
48 s[32] = c'\x20'
49 s[33] = c'\x21'
50 s[34] = c'\x22'
51 s[35] = c'\x23'
52 s[36] = c'\x24'
53 s[37] = c'\x25'
54 s[38] = c'\x26'
55 s[39] = c'\x27'
56 s[40] = c'\x28'
57 s[41] = c'\x29'
58 s[42] = c'\x2A'
59 s[43] = c'\x2B'
60 s[44] = c'\x2C'
61 s[45] = c'\x2D'
62 s[46] = c'\x2E'
63 s[47] = c'\x2F'
64 s[48] = c'\x30'
66 s[49] = c'\x00'
68 assert s[ 0] == c'\x00'
69 assert s[49] == c'\0'
71 return &s[1]
