Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Gwenaël Samain
cython
Commits
f0a69791
Commit
f0a69791
authored
Feb 21, 2009
by
Stefan Behnel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
unicode fixes for numpy test (untested, hopefully not breaking everything)
parent
fb48d396
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
25 deletions
+25
-25
tests/run/numpy_test.pyx
tests/run/numpy_test.pyx
+25
-25
No files found.
tests/run/numpy_test.pyx
View file @
f0a69791
...
...
@@ -4,7 +4,7 @@ cimport numpy as np
try
:
import
numpy
as
np
__doc__
=
"""
__doc__
=
u
"""
>>> basic()
[[0 1 2 3 4]
...
...
@@ -155,27 +155,27 @@ try:
"""
except
:
__doc__
=
""
__doc__
=
u
""
def
ndarray_str
(
arr
):
"""
u
"""
Since Py2.3 doctest don't support <BLANKLINE>, manually replace blank lines
with <_BLANKLINE_>
"""
return
str
(
arr
).
replace
(
'
\
n
\
n
'
,
'
\
n
<_BLANKLINE_>
\
n
'
)
return
unicode
(
arr
).
replace
(
u'
\
n
\
n
'
,
u
'
\
n
<_BLANKLINE_>
\
n
'
)
def
basic
():
cdef
object
[
int
,
ndim
=
2
]
buf
=
np
.
arange
(
10
,
dtype
=
'i'
).
reshape
((
2
,
5
))
cdef
object
[
int
,
ndim
=
2
]
buf
=
np
.
arange
(
10
,
dtype
=
u
'i'
).
reshape
((
2
,
5
))
print
buf
print
buf
[
0
,
2
],
buf
[
0
,
0
],
buf
[
1
,
4
],
buf
[
1
,
0
]
def
three_dim
():
cdef
object
[
double
,
ndim
=
3
]
buf
=
np
.
arange
(
24
,
dtype
=
'd'
).
reshape
((
3
,
2
,
4
))
cdef
object
[
double
,
ndim
=
3
]
buf
=
np
.
arange
(
24
,
dtype
=
u
'd'
).
reshape
((
3
,
2
,
4
))
print
ndarray_str
(
buf
)
print
buf
[
0
,
1
,
2
],
buf
[
0
,
0
,
0
],
buf
[
1
,
1
,
1
],
buf
[
1
,
0
,
0
]
def
obj_array
():
cdef
object
[
object
,
ndim
=
1
]
buf
=
np
.
array
([
"a"
,
1
,
{}])
cdef
object
[
object
,
ndim
=
1
]
buf
=
np
.
array
([
u
"a"
,
1
,
{}])
print
buf
print
buf
[
0
],
buf
[
1
],
buf
[
2
]
...
...
@@ -183,24 +183,24 @@ def obj_array():
def
print_long_2d
(
np
.
ndarray
[
long
,
ndim
=
2
]
arr
):
cdef
int
i
,
j
for
i
in
range
(
arr
.
shape
[
0
]):
print
" "
.
join
([
str
(
arr
[
i
,
j
])
for
j
in
range
(
arr
.
shape
[
1
])])
print
u" "
.
join
([
unicode
(
arr
[
i
,
j
])
for
j
in
range
(
arr
.
shape
[
1
])])
def
put_range_long_1d
(
np
.
ndarray
[
long
]
arr
):
"""Writes 0,1,2,... to array and returns array"""
u
"""Writes 0,1,2,... to array and returns array"""
cdef
int
value
=
0
,
i
for
i
in
range
(
arr
.
shape
[
0
]):
arr
[
i
]
=
value
value
+=
1
def
test_c_contig
(
np
.
ndarray
[
int
,
ndim
=
2
,
mode
=
'c'
]
arr
):
def
test_c_contig
(
np
.
ndarray
[
int
,
ndim
=
2
,
mode
=
u
'c'
]
arr
):
cdef
int
i
,
j
for
i
in
range
(
arr
.
shape
[
0
]):
print
" "
.
join
([
str
(
arr
[
i
,
j
])
for
j
in
range
(
arr
.
shape
[
1
])])
print
u" "
.
join
([
unicode
(
arr
[
i
,
j
])
for
j
in
range
(
arr
.
shape
[
1
])])
def
test_f_contig
(
np
.
ndarray
[
int
,
ndim
=
2
,
mode
=
'fortran'
]
arr
):
def
test_f_contig
(
np
.
ndarray
[
int
,
ndim
=
2
,
mode
=
u
'fortran'
]
arr
):
cdef
int
i
,
j
for
i
in
range
(
arr
.
shape
[
0
]):
print
" "
.
join
([
str
(
arr
[
i
,
j
])
for
j
in
range
(
arr
.
shape
[
1
])])
print
u" "
.
join
([
unicode
(
arr
[
i
,
j
])
for
j
in
range
(
arr
.
shape
[
1
])])
# Exhaustive dtype tests -- increments element [1] by 1 (or 1+1j) for all dtypes
def
inc1_byte
(
np
.
ndarray
[
char
]
arr
):
arr
[
1
]
+=
1
...
...
@@ -250,33 +250,33 @@ def inc1_float64_t(np.ndarray[np.float64_t] arr): arr[1] += 1
def
test_dtype
(
dtype
,
inc1
):
if
dtype
in
(
'F'
,
'D'
,
'G'
):
if
dtype
in
(
u'F'
,
u'D'
,
u
'G'
):
a
=
np
.
array
([
0
,
10
+
10j
],
dtype
=
dtype
)
inc1
(
a
)
if
a
[
1
]
!=
(
11
+
11j
):
print
"failed!"
,
a
[
1
]
if
a
[
1
]
!=
(
11
+
11j
):
print
u
"failed!"
,
a
[
1
]
else
:
a
=
np
.
array
([
0
,
10
],
dtype
=
dtype
)
inc1
(
a
)
if
a
[
1
]
!=
11
:
print
"failed!"
if
a
[
1
]
!=
11
:
print
u
"failed!"
cdef
struct
DoubleInt
:
int
x
,
y
def
test_recordarray
():
cdef
object
[
DoubleInt
]
arr
arr
=
np
.
array
([(
5
,
5
),
(
4
,
6
)],
dtype
=
np
.
dtype
(
'i,i'
))
arr
=
np
.
array
([(
5
,
5
),
(
4
,
6
)],
dtype
=
np
.
dtype
(
u
'i,i'
))
cdef
DoubleInt
rec
rec
=
arr
[
0
]
if
rec
.
x
!=
5
:
print
"failed"
if
rec
.
y
!=
5
:
print
"failed"
if
rec
.
x
!=
5
:
print
u
"failed"
if
rec
.
y
!=
5
:
print
u
"failed"
rec
.
y
+=
5
arr
[
1
]
=
rec
arr
[
0
].
x
-=
2
arr
[
0
].
y
+=
3
if
arr
[
0
].
x
!=
3
:
print
"failed"
if
arr
[
0
].
y
!=
8
:
print
"failed"
if
arr
[
1
].
x
!=
5
:
print
"failed"
if
arr
[
1
].
y
!=
10
:
print
"failed"
if
arr
[
0
].
x
!=
3
:
print
u
"failed"
if
arr
[
0
].
y
!=
8
:
print
u
"failed"
if
arr
[
1
].
x
!=
5
:
print
u
"failed"
if
arr
[
1
].
y
!=
10
:
print
u
"failed"
cdef
struct
NestedStruct
:
DoubleInt
a
...
...
@@ -304,10 +304,10 @@ def test_bad_nested_dtypes():
def
test_good_cast
():
# Check that a signed int can round-trip through casted unsigned int access
cdef
np
.
ndarray
[
unsigned
int
,
cast
=
True
]
arr
=
np
.
array
([
-
100
],
dtype
=
'i'
)
cdef
np
.
ndarray
[
unsigned
int
,
cast
=
True
]
arr
=
np
.
array
([
-
100
],
dtype
=
u
'i'
)
cdef
unsigned
int
data
=
arr
[
0
]
return
-
100
==
<
int
>
data
def
test_bad_cast
():
# This should raise an exception
cdef
np
.
ndarray
[
long
,
cast
=
True
]
arr
=
np
.
array
([
1
],
dtype
=
'b'
)
cdef
np
.
ndarray
[
long
,
cast
=
True
]
arr
=
np
.
array
([
1
],
dtype
=
u
'b'
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment