Skip to content

Commit 33afbcc

Browse files
committed
TEST: Add test for numpy size()
1 parent 543ef0c commit 33afbcc

File tree

2 files changed

+65
-0
lines changed

2 files changed

+65
-0
lines changed

integration_tests/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,7 @@ RUN(NAME variable_decl_03 LABELS cpython llvm c)
281281
RUN(NAME array_expr_01 LABELS cpython llvm c)
282282
RUN(NAME array_expr_02 LABELS cpython llvm c)
283283
RUN(NAME array_size_01 LABELS cpython llvm c)
284+
RUN(NAME array_size_02 LABELS cpython llvm c)
284285
RUN(NAME array_01 LABELS cpython llvm wasm c)
285286
RUN(NAME array_02 LABELS cpython wasm c)
286287
RUN(NAME bindc_01 LABELS cpython llvm c)

integration_tests/array_size_02.py

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
from lpython import i32, f64, c32, c64
2+
from numpy import empty, size
3+
4+
def main0():
5+
x: i32[4, 5, 2] = empty([4, 5, 2])
6+
y: f64[24, 100, 2, 5] = empty([24, 100, 2, 5])
7+
z: i32
8+
w: i32
9+
z = 2
10+
w = 3
11+
print(size(x))
12+
print(size(x, 0))
13+
print(size(x, 1))
14+
print(size(x, 2))
15+
print(size(y))
16+
print(size(y, 0))
17+
print(size(y, 1))
18+
print(size(y, z))
19+
print(size(y, w))
20+
21+
assert size(x) == 40
22+
assert size(x, 0) == 4
23+
assert size(x, 1) == 5
24+
assert size(x, 2) == 2
25+
assert size(y) == 24000
26+
assert size(y, 0) == 24
27+
assert size(y, 1) == 100
28+
assert size(y, z) == 2
29+
assert size(y, w) == 5
30+
31+
def main1():
32+
a: c32[12] = empty([12])
33+
b: c64[15, 15, 10] = empty([15, 15, 10])
34+
c: i32
35+
d: i32
36+
c = 1
37+
d = 2
38+
print(size(a))
39+
print(size(a, 0))
40+
print(size(b))
41+
print(size(b, 0))
42+
print(size(b, c))
43+
print(size(b, d))
44+
45+
assert size(a) == 12
46+
assert size(a, 0) == 12
47+
assert size(b) == 2250
48+
assert size(b, 0) == 15
49+
assert size(b, c) == 15
50+
assert size(b, d) == 10
51+
52+
def main2():
53+
a: i32[2, 3] = empty([2, 3])
54+
print(size(a))
55+
print(size(a, 0))
56+
print(size(a, 1))
57+
58+
assert size(a) == 2*3
59+
assert size(a, 0) == 2
60+
assert size(a, 1) == 3
61+
62+
main0()
63+
main1()
64+
main2()

0 commit comments

Comments
 (0)